美文网首页
HTTP 实体首部字段(六)

HTTP 实体首部字段(六)

作者: ssscen | 来源:发表于2016-07-11 14:27 被阅读391次

实体首部字段

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

1. Allow

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

2. Content-Encoding

告知客户端,服务器对实体的主体部分选用的内容编码方式。内容编码是指在不丢失实体信息的前提下所进行的压缩。


其主要采用以下4中内容编码的方式。
· gzip
· compress
· deflate
· identity

3. Content-Language

告知客户端,实体主体使用的自然语言。
中文: zh-CN 。

4. Content-Length

表明了实体主体部分的大小。单位是字节。

5. Content-Location

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

区别:与首部字段* Location 不同的是,其所指的 URI 是报文主题返回资源对应的 URI *。

6. Content-MD5

Content-MD5 是一串由 MD5 算法生成的值,其目的在于检查报文主体在传输过程中是否保持完整,以及确认传输到达。

对报文主体执行 MD5 算法获得的 128 位二进制数,再通过 Base64 编码后将结果写入 Content-MD5 字段值。由于 HTTP 首部无法记录二进制值,所以要通过 Base64 编码处理。为确保报文的有效性,作为接受方的客户端会对报文主体在执行一次相同的 MD5 算法。计算出的值与字段值作比较后,即可判断出报文主体的准确性。

采用这种方法,对内容上的偶发性改变是无从查证的,也无法检测出恶意篡改。其中一个原因在于,内容如果能够被篡改,那么同时意味着 Content-MD5 也可重新计算然后被篡改。所以处在接受阶段的客户端是无法意识到报文主体以及首部字段 Content-MD5 是已经被篡改过的。

Content-MD5

7.Content-Range

针对范围请求,返回响应时使用的首部字段 Content-Range,能告知客户端作为响应返回的实体的哪个部分符合范围请求。字段值以字节为单位,表示当前发送部分及整个实体大小。

 Content-Range: bytes 5001 - 10000 / 10000 的意思如下图所示
Content-Range

8. Content-Type

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

该字段说明了实体主体内对象的媒体类型。和首部字段 一样,字段值用 type/subtype 形式赋值。
参数 charset使用 iso-8859-1euc-jp 等字符集进行赋值。

9. Expires

Expires: Wed, 04 Jul 2012 08:26:05 GMT
Expires

Expires 会将资源失效的日期告知客户端。缓存服务器在接收到含有首部字段 Expires 的响应后,会以缓存来应答请求,在 Expires 字段值指定的时间之前,响应的副本会一直被保存。当超过指定的时间后,缓存服务器在请求发送过来时,会转向源服务器请求资源。

源服务器不希望缓存服务器对资源缓存时,最好在 Expires 字段内写入与首部字段 Date 相同的值。
但是,当首部字段 Cache-Control 有指定 max-age 指令时,比起首部字段 Expires ,会优先处理 max-age 指令

10. Last-Modified

Last-Modified: Wed, 23 May 2012 09:59:55 GMT
Last-Modified

Last-Modified 指明资源最终修改的时间。一般来说,这个值就是 Request-URI 指定资源被修改的时间。但类似使用 CGI 脚本进行动态数据处理时,该值有可能会变成数据最终修改时的时间。

相关文章

  • HTTP回顾6

    HTTP首部 报文首部 HTTP请求报文 请求行、请求首部字段、通用首部字段、实体首部字段、其他 响应报文 状态行...

  • HTTP 实体首部字段(六)

    实体首部字段 实体首部字段是包含在请求报文和响应报文中的实体部分所使用的首部,用于补充内容的更新时间等于实体相关的...

  • HTTP 首部

    分类 请求首部字段、响应首部字段、通用首部字段、实体首部字段。注意,实体分为实体首部、实体主体。 请求首部字段 响...

  • HTTP实体首部字段

    Allow 用于通知客户端能够支持Request-URI 指定资源的所有HTTP方法。当服务器接收到不支持的HTT...

  • HTTP协议(2)

    六:常见的HTTP首部字段 a、通用首部字段(请求报文与响应报文都会使用的首部字段) Date:创建报文时间 Co...

  • http 首部字段

    1、Upgrade: 通用首部字段 (http/1.1) 首部字段 Upgrade 用于检测 HTTP 协议及其他...

  • HTTP (六.HTTP首部)

    HTTP请求报文由方法、URI、HTTP 版本、HTTP 首部字段等部分构成。 1.通用首部字段(General ...

  • HTTP 首部字段

    HTTP 报文 HTTP 请求报文 在请求中,HTTP 报文由方法、URI、HTTP 版本、HTTP 首部字段等部...

  • HTTP首部字段

    HTTP首部由首部字段名和首部字段值组成,以逗号隔开。如果首部出现重复,有些浏览器优先处理第一个出现的首部,有些优...

  • http常见状态码实例总结

    报文结构 1.报文首部 报文首部由几个字段组成,http 请求报文由方法,URI,http版本,http首部字段等...

网友评论

      本文标题:HTTP 实体首部字段(六)

      本文链接:https://www.haomeiwen.com/subject/mdhjjttx.html