HTTP协议中的实体首部

实体首部字段是包含在请求报文和响应报文中的实体部分所使用的首部,用于补充内容的更新时间等与实体相关的信息。——《图解HTTP》

0x01 Allow

通知客户端,服务器能够支持的所有HTTP方法。
当服务器接收到不支持的HTTP方法时,会以状态码405 Method Not Allowed作为响应返回。同时还会把支持的HTTP方法放入首字段Allow后返回。

0x02 Content-Encoding

告知客户端,服务器对实体的主体部分选用的内容编码方式,只要是以下4中
gzip, 由gzip生成的编码格式。采用Lempel-Ziv算法及32位循环冗余校验。
compress,由UNIX文件压缩程序compress生成的编码格式,采用Lempel-Ziv-Welch算法
deflate 使用zlib格式及由deflate压缩算法生成的编码格式
identity 不执行压缩或不会变化的默认编码格式
使用权重q表示相对优先级,*表示任意编码格式
个人感觉与请求首部中的Accept-Encoding相对应

0x03 Content-Length

表示实体主体部分的大小(字节)

0x04 Content-Location

给出的是报文主体部分对应的URI。

0x05 Content-MD5

由MD5算法生成的值,用于检查报文主体在传输过程中是否保持完整,以及确认传输到达。
先对报文主体执行MD5算法,获取128位二进制数,再通过Base64编码后将结果写入值,因为HTTP首部无法记录二进制值。客户端接收后会对报文主体再执行一次MD5算法,计算出的值与之比较,确认准确性。
然而这种方式对于偶发性的改变是无从查证的,而且无法检测恶意篡改。因为如果内容被篡改,Content-MD5也可以重新计算并篡改。

0x06 Content-Range

针对范围请求,返回响应时使用Content-Range
例如

Content-Range:bytes 5001-10000/10000

0x07 Content-Type

说明了实体对象的媒体类型,用type/subtype赋值。
参数charset使用字符集进行赋值

Content-Type:text/html;charset=UTF – 8

0x08 Expires

将资源失效的日期告知客户端。缓存服务器在接收到含有首部字段Expires的响应后,会以缓存来应答请求,失效后,缓存服务器在接收到请求时,会向源服务器请求资源。
Cache-Control有指定的max-age指令时,max-age指令优先级更高

0x09 Last-Modified

指明资源最终修改的时间。
但类似使用CGI脚本进行动态数据处理时,该值有可能变成数据最终修改时的时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值