HTTP1.1
读了一本图解http,总结一下子。
1 、重要的头部
1、TCP/IP 通信传输流 五层模型
先盗个图,重点说明每过一层都会加个头,头很重要啊!其中https 就是在传输层搞事,把本来明文的数据包给加密了,变成了安全协议。还有代理服务器会写 via 到头里。
2、头的分类
通用头,请求头,响应头,实体头。还有一些其他头
通用头就是请求和响应都会用的头部字段。
实体头是报文第三个部分实体,它自己又可以有头,而且如果指定多部头的话实体头可以有好多,好多。
3、自定义头
一些 api 会基于头做一些认证和授权。
2、不常用的Method
Put 表示上传文件,没有验证,容易被攻击所以不用。
Delete 和 Put 相反。
Options 查询一下支持的 Method。
Trace 追踪到源服务器的路线。
Head 测试通信状态。
文件上传可以通过 post + 头。所以常用的就是 post 和 get
3、给浏览器用的状态码
2xx 成功,3xx重定向,4xx客户端错误,5xx应用代码错误。
举例当收到 301 302 303 状态码 大部分浏览器都会把post 改成 get 删除主体然后再发送一次。
所以这个状态码是设计和 浏览器交互的,一般情况下与我们写的页面逻辑无太大关系。
4、服务器代理和网关
代理:控制访问次数、记录访问日志、缓存等作用
网关:对外支持http对内支持其他通信协议,关于网关比较安全巴拉巴拉的并没有看懂,书上说的是可以客户端和网关中间通信加密,并不能理解~~
隧道:不懂
HTTP1.1的更多相关文章
- HTTP1.1初识
Http(超文本传输协议)是一个基于请求与响应模式的.无状态的.应用层的协议. Http1.1版中,有一个持续连接(Persistent Connections)机制,其作为Http1.1中建立连接的 ...
- Nginx系列5之让Nginx支持HTTP1.1
preface nginx在反向代理HTTP协议的时候,默认使用的是HTTP1.0去向后端服务器获取响应的内容后在返回给客户端. HTTP1.0和HTTP1.1的一个不同之处就是,HTTP1.0不支持 ...
- HTTP1.0与HTTP1.1的区别
HTTP/1.1与HTTP/1.0的区别 下面主要从几个不同的方面介绍HTTP/1.0与HTTP/1.1之间的差别,当然,更多的内容是放在解释这种差异背后的机制上. 1 可扩展性 可扩展性的一个重要原 ...
- http1.1和http1.0区别
http1.1和服务器建立连接可以获得多个资源 http1.0和服务器建立连接可以获取一个值
- HTTP详解(3)-http1.0 和http1.1 区别
HTTP详解(3)-http1.0 和http1.1 区别 分类: 网络知识2013-03-17 16:51 1685人阅读 评论(0) 收藏 举报 目录(?)[+] 翻了下HTTP1.1的协 ...
- HTTP1.1缓存策略
以下是一幅虽然信息包含量有限.但足够以最简洁的方式说明了“什么是HTTP1.1缓存策略”的图 缓存和缓存策略 web缓存(web cache)或代理缓存(proxy cache)是一种特殊的HTTP ...
- WebSocket原理及与http1.0/1.1 long poll和 ajax轮询的区别【转自知乎】
一.WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有1.1和1.0之说,也就是所谓的ke ...
- [HTTP2] HTTP1 probs and HTTP2 saves
1. HOL (HEADS of LINE BLOCKING) Too many requests in the header tag. Broswer can allow 6 reuqest to ...
- 既然HTTP1.1协议里每个连接默认都是持久连接,那么为何当今所有报文都在使用Connetion:Keep-Alive
说白了,如果你发起时有,那么服务器支持,回应时也会有,不支持,也就没有了.所以一般客户端都会默认带着发,服务端返回不返回就是服务端的事了. 1. 支不支持长连接,关键在于服务端是否支持. 如果服务端不 ...
- c++如何使用SOCKET 发送HTTP1.1 GET POST请求包
如何使用SOCKET 发送HTTP1.1 GET POST请求包 分类: 无线通信 C/C++2009-10-29 10:58 14259人阅读 评论(15) 收藏 举报 socket服务器actio ...
随机推荐
- H3C 帧中继显示与调试(续)
- 解析XML内容到User对象
users.xml <?xml version="1.0" encoding="UTF-8"?> <xml-root> <conn ...
- 3-7 彻底搞清楚unicode和utf8编码
- webpack优化 -- compression-webpack-plugin 开启gzip
webpack优化 -- compression-webpack-plugin 开启gzip 打包的时候开启gzip可以大大减少体积,非常适合于上线部署.下面以vue-cli2.x项目为例,介绍如何在 ...
- Django入门10--admin增强
- Pandas库之DataFrame
Pandas库之DataFrame 1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表. 或许说它可能有点像matlab的矩阵,但是matlab ...
- 「THUPC 2019」不等式 / inequality
https://loj.ac/problem/6620 高中数学好题.. |kx+b|的函数图像很直观,直接考虑函数图像: 一定只有一段极小值点! 这个点就是最小值了 特点:斜率为0! 而且发现,如果 ...
- vue-learning:0 - 目录
Vue-learning vue.js学习路径 Vue的API地图 点击查看vue的API地图 视图层 点击可直接到达详情页面 指令 {{ }} / v-html v-if / v-else / v- ...
- git 常用操作命令(Common operation)
win10清除已登录账号密码方法 打开控制面板(Control Panel): 选择用户账户(User Accounts): 选择管理你的凭据(Credential Manager): 管理windo ...
- 找不到 javax.servlet.http.HttpServletResponse 和 javax.servlet.http.HttpServletRequest 问题解决
时隔3个月,我又回来了!在做完毕设之后,由于对此过程中学到的一些东西疏于整理,所以当再次打开我的project时有些手足无措,以至于出现一些问题也要解决好半天,我知错! 今天的问题是: 开始搜到的解决 ...