《图解HTTP》学习总结---第三章

吐槽

学不动了,学不动了,感觉自己最近脑子昏沉沉的,自己还是晚上敲代码,其余时间学东西,再坚持下就好了。

本章学习重点

  • HTTP报文内部主要内容
  • 请求报文的相关内容
  • 响应报文的相关内容
  • 请求和响应的时候是如何运作的

请求报文和响应报文的结构

HTTP下的报文,大致可以分为报文首部和报文主体这两个部分,两者最初用空行来划分的,通常,不一定要报文主体。
这里写图片描述
然后请求报文和响应报文的结果差别在报文首部

请求报文报文首部是
这里写图片描述

整体的
这里写图片描述

下面是请求报文首部的一些属性
Accept
告诉服务端,该请求所能支持的响应数据类型,专业术语称为MIME 类型,上图中表示支持
Cookie
将客户端的cookie放在请求头里一并发送给服务器端.
Referer
表示这个请求是从哪个url跳过来的,通过百度来搜索淘宝网,那么在进入淘宝网的请求报文中,Referer的值就是:www.baidu.com
Cache-control
对服务端返回的相应内容进行缓存控制,即是否需要在客户端保存下来,如上表示不缓存
User-Agent
用户代理,简称 UA,是一个特殊字符串头,使得服务器能够识别客户端使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等信息
Connection
表示客户端与服务连接类型;Keep-Alive表示持久连接

响应报文

整体结构图与请求报文相同
报文首部结构图:
这里写图片描述

请求报文和响应报文的首部由下面数据组成
请求行
包含请求方法,请求URI,HTTP版本
状态行
包含表明响应结果的状态码,原因短语,HTTP
首部字段
包含表示请求和响应的各种条件和属性类的各种首部

报文主体和实体主体的差异

报文
是HTTP通信中的基本单位,由8位组字节流组成,通过HTTP通信传输
实体
作为请求或者响应的有效负载数据被传输,其中内容由实体首部和实体主体组成

HTTP报文的主体用于传输请求或者响应的实体主体

通常,报文主体等于实体主体,只要当传输中进行编码操作时候,实体主体的内容发生变化,才导致它和报文主体产生差异

压缩传输的内容编码

向待发送邮件添加附件的时候,为了使邮件的分量变小,我们就会事先压缩好再发,HTTP协议里面有个被称为内容编码的功能也能压缩东西
内容编码指名实体内容上的编码格式,并保存实体信息原样压缩,把内容编码由客户端接收并负责解码

分割发送的分块传输编码

在HTTP通信过程中,请求的编码实体资源尚未全部传输完成之前,浏览器无法显示请求页面,所以,在传输大容量的数据的时候,通过把数据分割成很多块,才能让浏览器逐渐显示界面。
这种把实体主体分块的功能,称为分块传输编码
分块传输编码会将实体主体分成很多部分(块),每一块都由十六进制来标记块的大小,而实体主体的最后一块会使用“0”来标记
使用分块的传输的实体主体会由负责接收的客户端来负责解码,恢复到编码前的实体主体

发送多种数据的多部分对象的集合

在邮件里面,我们可以添加很多东西,所以相应的HTTP协议里面,也采用了多部分对象集合,发送一份报文主体内可以含多类型实体
在HTTP报文中使用多部分对象集合的时候,需要在首部字段里面加入Content-type

猜你喜欢

转载自blog.csdn.net/sakurakider/article/details/81538118