五. HTTP首部

五. HTTP首部

HTTP协议的请求和响应报文必定包含首部,是报文中包含信息最丰富的:
在这里插入图片描述
注:如果首部中出现相同的字段,不同浏览器会有不同的处理方式,有的会优先处理第一个,而有的浏览器是优先处理第二个。

HTTP首部字段类型有四种:

  • 通用首部:请求和响应都会用的;
    在这里插入图片描述
  • 请求首部:请求报文中使用,补充了附加内容、响应内容相关优先级等信息;
    在这里插入图片描述
  • 响应首部:响应报文中使用,补充响应的优先级内容;
    在这里插入图片描述
  • 实体首部:针对实体部分使用的首部,补充资源内容更新时间等与实体有关的内容。
    在这里插入图片描述
    当然也还包含Cookie、Set-Cookie等首部字段。

1. 通用首部字段

1)Cache-Control

该字段能控制缓存(缓存服务器)的行为,有如下指令:

  • public
    表示其他客户端也可以利用此缓存;private则相反,此缓存仅供特定的客户端使用。
  • no-cache
    如果是请求报文首部字段,表示客户端不接受缓存过的响应,需要缓存服务器将此请求转发给源服务器;如果是响应报文首部字段,表示此响应不允许缓存服务器缓存;
    这有效避免了缓存服务器返回过期的响应。
  • no-store
    表示请求或响应报文中存在机密信息,所以缓存服务器不能再本地存储请求或响应的任何一部分。
    当然指令还有很多,这里就不一一讨论了。

2)Connection
HTTP1.1默认为持久连接,客户端会连续发送请求,当服务端先断开时就指定Connection字段为close。
3)Date
表示创建报文的日期和时间。
4)Via
可以追踪客户端服务器之间报文传输的路径。

2. 请求首部字段

1)Accept
在这里插入图片描述
q是权重,表示优先级。

2)Accept-Charset
在这里插入图片描述
3)Accept-Encoding

指定内容编码及其优先级顺序,如gzip、identity(不压缩)等。

4)Authorization

如果请求的资源需要认证信息时,服务器会返回状态码401;这是客户端就会将此字段加入首部,用来告知服务器认证信息。
在这里插入图片描述
5)Host

这是一个在HTTP1.1中必须被包含的首部字段,若服务器未设置主机名直接发空值;
在这里插入图片描述
3. 响应首部字段

1)Accept-Ranges

表示是否可以处理范围请求,bytes表示可以处理,none反之。

2)Age

表示服务器创建此响应已经过去的秒数,如果是缓存服务器则表示缓存的响应发起认证到认证完成的时间值。
在这里插入图片描述
4. 实体首部字段

1)Allow

当服务器收到不支持的HTTP请求方法时,会返回响应:状态码405,并在首部字段Allow后添加所有支持的HTTP方法:
在这里插入图片描述
2)Last-Modified

指明资源最终修改的时间。

5. 为Cookie服务的首部字段

Cookie用来管理服务器和客户端之间的状态,Web服务器会经过浏览器将一些数据临时写入用户计算机内,当用户访问Web服务器时可以通过通信的方式再取回Cookie。下图为与Cookie有关的首部字段:
在这里插入图片描述
6. 说明

本文为《图解HTTP》读书笔记,如有错误,还请兄弟们指正,大家一起进步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值