《图解HTTP》笔记-HTTP报文内的HTTP信息
2018-03-22 22:14
351 查看
HTTP报文
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/49de8db2eab0d38ab64daa0ac8e925ae)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/257d873d7ca17ed595d6e569661e7b5f)
请求行包含用于请求的方法,请求 URI 和 HTTP 版本
状态行包含表明响应结果的状态码,原因短语和 HTTP 版本
首部字段包含表示请求和响应的各种条件和属性的各类首部(通用首部、请求首部、响应首部和实体首部)
编码提高速率
编码提高传输速率HTTP在传输时可以原貌传输也可以传输中编码传输,以有效处理大量请求,但是耗CPU资源
报文是 HTTP 通信中的基本单位,由 8 位组字节流(octet sequence,其中 octet 为 8 个比特)组成,通过 HTTP 通信传输
实体作为请求或响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成
HTTP 报文的主体用于传输请求或响应的实体主体,通常,报文主体等于实体主体。只有当传输中进行编码操作时,实体
主体的内容发生变化,才导致它和报文主体产生差异
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/d0a3f84f5840602068cdd0d38fad1c17)
压缩文件常用的内容编码有以下几种:
gzip(GNU zip)
compress(UNIX 系统的标准压缩)
deflate(zlib)
identity(不进行编码)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/c5dfe594735ff67978f3944d7f1e490b)
分块传输编码会将实体主体分成多个部分(块)。每一块都会用十六进制来标记块的大小,而实体主体的最后一块会使用“0(CR+LF)”来标记,客户端解码
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/b9046d23dac90ba3c8ac5b9e92cdc657)
多部分对象集合包含的对象如下(需要在首部字段里加上Content-type):
multipart/form-data在 Web 表单文件上传时使用
multipart/byterang状态码 206(Partial Content,部分内容)响应报文包含了多个范围的内容时使用
范围请求
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/5806636d46691cf4f32f976008ace367)
范围请求指定范围发送的请求,执行范围请求时,会用到首部字段 Range 来指定资源的 byte 范围,返回206 Partial Content 的响应报文(无法响应范围请求就改为200OK的正常请求)
多重范围请求Content-Type 标明 multipart/byteranges
内容协商
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/042b968ef3a599db179e2148f15b1da0)
内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源
相关首部字段如下
Accept
Accept-Charset
Accept-Encoding
Accept-Language
Content-Language
包括服务器驱动协商(依据请求首部服务器自动处理,但内容不一定最优),客户端驱动协商(浏览器手动选择),透明协商(前面两者的结合体)
请求行包含用于请求的方法,请求 URI 和 HTTP 版本
状态行包含表明响应结果的状态码,原因短语和 HTTP 版本
首部字段包含表示请求和响应的各种条件和属性的各类首部(通用首部、请求首部、响应首部和实体首部)
编码提高速率
编码提高传输速率HTTP在传输时可以原貌传输也可以传输中编码传输,以有效处理大量请求,但是耗CPU资源
报文是 HTTP 通信中的基本单位,由 8 位组字节流(octet sequence,其中 octet 为 8 个比特)组成,通过 HTTP 通信传输
实体作为请求或响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成
HTTP 报文的主体用于传输请求或响应的实体主体,通常,报文主体等于实体主体。只有当传输中进行编码操作时,实体
主体的内容发生变化,才导致它和报文主体产生差异
压缩文件常用的内容编码有以下几种:
gzip(GNU zip)
compress(UNIX 系统的标准压缩)
deflate(zlib)
identity(不进行编码)
分块传输编码会将实体主体分成多个部分(块)。每一块都会用十六进制来标记块的大小,而实体主体的最后一块会使用“0(CR+LF)”来标记,客户端解码
多部分对象集合包含的对象如下(需要在首部字段里加上Content-type):
multipart/form-data在 Web 表单文件上传时使用
multipart/byterang状态码 206(Partial Content,部分内容)响应报文包含了多个范围的内容时使用
范围请求
范围请求指定范围发送的请求,执行范围请求时,会用到首部字段 Range 来指定资源的 byte 范围,返回206 Partial Content 的响应报文(无法响应范围请求就改为200OK的正常请求)
多重范围请求Content-Type 标明 multipart/byteranges
内容协商
内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源
相关首部字段如下
Accept
Accept-Charset
Accept-Encoding
Accept-Language
Content-Language
包括服务器驱动协商(依据请求首部服务器自动处理,但内容不一定最优),客户端驱动协商(浏览器手动选择),透明协商(前面两者的结合体)
相关文章推荐
- 《图解HTTP》笔记——HTTP报文内的HTTP信息(第三章)
- 《图解HTTP》笔记2HTTP报文内的HTTP信息
- 图解HTTP(三)—HTTP报文内的HTTP信息
- 《图解HTTP》学习笔记(三)-HTTP报文内的HTTP信息
- 图解HTTP协议 第3章 HTTP报文内的HTTP信息学习笔记
- 《图解HTTP》读书笔记三:HTTP 报文内的 HTTP 信息
- 《图解HTTP》读书笔记(3)第3章HTTP报文内的HTTP信息(关键词:HTTP/)
- 图解http学习笔记3.HTTP报文内的HTTP信息
- HTTP学习笔记:HTTP报文
- http响应报文和http请求报文 详细信息
- HTTP学习笔记--HTTP报文
- http报文中报文信息
- http学习笔记(四)——HTTP报文
- JMeter学习笔记--使用HTTP信息头管理器
- 3.HTTP报文内的HTTP信息
- HTTP学习笔记:HTTP报文
- Http报文学习笔记
- JMeter学习笔记--使用HTTP信息头管理器
- 第 3 章 HTTP 报文内的 HTTP 信息
- 图解HTTP:简单的HTTP协议和报文信息