(chap6 Http首部) 响应首部字段 Ct-MD5Ct-RangeCt-TypeExpiresLast-Modified
6. Content-MD5
首部字段Content-MD5是一串由MD5算法生成的值,其目的在于检查报文主体在传输过程中是否保持完整,以及确认传输到达。
eg.
Content-MD5: OGFkzDUwNGVhNGY3N2MxMDIwzmQ4NTBmY21yTY==H对报文主体执行MD5算法获得的128位二进制数,再通过Base64编码后将结果写入Content-MD5字段值。由于HTTP首部无法记录二进制值,所以要通过Base64编码处理。
为确保报文的有效性,作为接收方的客户端会对报文主体再执行一次相同的MD5算法。计算出的值与字段值作比较后,即可判断出报文主体的准确性。
采用这种方法,对内容上的偶发性改变是无从查证的,也无法检测出恶意篡改。其中一个原因在于,内容如果能够被篡改,那么同时意味着Content-MD5也可重新计算然后被篡改。所以处在接收阶段的客户端是无法意识到报文主体以及首部字段Content-MD5是已经被篡改过的。
7. Content-Range
针对范围请求,返回响应时使用的首部字段Content-Range,能告知客户端作为响应返回的实体的哪个部分符合范围请求。字段值以字节为单位,表示当前发送部分及整个实体大小。
8. Content-Type
说明了实体主体内对象的媒体类型。
和首部字段Accept一样,字段值用typel/subtype形式赋值。
eg. Content-Type: text/html; charset=UTF-8参数charset还可使用iso-8859-1或euc-jp等字符集进行赋值。
9. Expires
告知客户端资源失效的日期
缓存服务器在接收到含有首部字段Expires的响应后,会以缓存来应答请求,在Expires字段值指定的时间之前,响应的副本会一直被保存。当超过指定的时间后,缓存服务器在请求发送过来时,会转向源服务器请求资源。
源服务器不希望缓存服务器对资源缓存时,最好在Expires字段内写入与首部字段 Date相同的时间值。
但是,当首部字段Cache-Control有指定max-age指令时,比起首部字段Expires,会优先处理max-age指令。
10. Last-Modified
资源最终修改的时间
一般来说,这个值就是Request-URI指定资源被修改的时间。但类似使用CGI脚本进行动态数据处理时,该值有可能会变成数据最终修改时的时间。
总结
以上是生活随笔为你收集整理的(chap6 Http首部) 响应首部字段 Ct-MD5Ct-RangeCt-TypeExpiresLast-Modified的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: (chap6 Http首部) 响应
- 下一篇: (chap6 Http首部) 为C