http第二篇博客
起始行
三个元素
- 1.请求方法:(如get获取资源,post推送资源)
- 2.请求地址:通常是一个url 或者协议端口域名的绝对路径
- 3.http版本:应以了剩余报文的结构
请求方法
记住三句面试题
- 最常用的请求方法是get 和 post
- 常见的请求方法至少有七种
- 请求方法不止七种
最后两种不常用
请求头
-
请求头允许客户端向服务器端传递附加信息 ,请求头由名称(不区分大小写)后跟一个“:”,冒号后跟具体值(不带换行符)组成
-
根据不同上下文,可分为:
- 1.通用头 :同时适用于请求和相应消息,单与最终消息主体中传输的数据无关的消息头
- 2.请求头:包含更多有关要获取的资源或用户端本身信息的消息头
- 3.实体头:包含有关实体主体的更多信息,如主体长度或mime类型
请求主体
就是发送给服务器的数据
请求消息的最后一部分是请求主体
- 不是所有的请求都需要请求主体:例如获取资源的请求get,head,delete等通常他们不需要请求主体
- 有些请求将数据发送到服务器以便更新数据:常见的情况是post请求(包含html表单数据)
- 请求主体大致分两类:
- 1.单一资源主体:由一个单文件组成。该类型请求主体有两个header定义:Content-Type和Content—Length.
- 2.多资源主体:由多部分请求主体组成,每一部分包含不同的信息位。通常是和HTML表单联系在一起
响应头/状态行
包含以下信息
- 1.协议版本:通常为HTTP/1.1
- 2.状态码:表明请求是成功或失败。常见的是200,404,或302
- 3.状态文本:一个简短的,纯粹的信息,通过状态码的描述帮助人们理解该HTTP(就是给人看的方便理解的)
举例:
状态码
状态码分5类
- 1.信息相应
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V6cle3Xh-1598281257446)(https://s1.ax1x.com/2020/08/17/dm6zNT.png)]
- 2.成功相应
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MHjYezxl-1598281257449)(https://s1.ax1x.com/2020/08/17/dmcuCD.png)]
-
3.重定向
-
4.客户端相应
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B0R9Wiq5-1598281257453)(https://s1.ax1x.com/2020/08/17/dmWUwn.png)]
- 5.服务器端相应
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WvSksO92-1598281257454)(https://s1.ax1x.com/2020/08/17/dmfi0s.png)]
MIME类型
多用途internet右键扩展类型 ,是一种标准化的方式来表示文档的性质和格式
浏览器通常使用MIME来确定如何处理文档;因此服务器设置正确以将正确的MIME类型附加到相应对象的头部是非常重要的
HTTP/2.0
HTTP/1.x报文有一些性能上的缺点
- 消息头不想消息主体一样会被压缩
- 两个报文之间的header通常非常相似,但他们依然在连接中重复传输
- 无法复用。当在同一个服务器打开几个连接时TCP热连接比冷连接更加有效。
HTTP/2.0引入了一个额外的步骤他将HTTP/1.x消息分成帧并嵌入到流中