HTTP响应首部字段详解

本文详细解析HTTP响应首部字段,包括Accept-Ranges、Age、ETag、Location、Proxy-Authenticate、Retry-After、Server、Vary和WWW-Authenticate等,阐述它们的功能和应用场景,如重定向、缓存控制、认证等。
摘要由CSDN通过智能技术生成

        响应首部字段是由服务器端向客户端返回响应报文中所使用的字段,用于补充响应的附加信息、 服务器信息, 以及对客户端的附加要求等信息。


1. Accept-Ranges

        首部字段 Accept-Ranges 是用来告知客户端服务器是否能处理范围请求, 以指定获取服务器端某个部分的资源。
        可指定的字段值有两种, 可处理范围请求时指定其为 bytes, 反之则指定其为 none。

2. Age

        首部字段 Age 能告知客户端, 源服务器在多久前创建了响应。 字段值的单位为秒。
        若创建该响应的服务器是缓存服务器, Age 值是指缓存后的响应再次发起认证到认证完成的时间值。 代理创建响应时必须加上首部字段Age。

2. ETag

       首部字段 ETag 能告知客户端实体标识。 它是一种可将资源以字符串形式做唯一性标识的方式。 服务器会为每份资源分配对应的 ETag值。

       另外, 当资源更新时, ETag 值也需要更新。 生成 ETag 值时, 并没有统一的算法规则, 而仅仅是由服务器来分配。

        资源被缓存时, 就会被分配唯一性标识。 例如, 当使用中文版的浏览器访问 http://www.google.com/ 时, 就会返回中文版对应的资源, 而使用英文版的浏览器访问时, 则会返回英文版对应的资源。 两者的URI 是相同的, 所以仅凭 URI 指定缓存的资源是相当困难的。 若在下载过程中出现连接中断、 再连接的情况, 都会依照 ETag 值来指定资源。
        强 ETag 值和弱 ETag 值,ETag 中有强 ETag 值和弱 ETag 值之分。
强 ETag 值, 不论实体发生多么细微的变化都会改变其值。

弱 ETag 值,只用于提示资源是否相同。 只有资源发生了根本改变, 产
生差异时才会改变 ETag 值。 这时, 会在字段值最开始处附加 W/。

4. Location

        使用首部字段 Location 可以将响应接收方引导至某个与请求 URI 位置不同的资源。
       基本上, 该字段会配合 3xx : Redirection 的响应, 提供重定向的URI

        几乎所有的浏览器在接收到包含首部字段 Location 的响应后, 都会强
制性地尝试对已提示的重定向资源的访问。

5. Proxy-Authenticate

       首部字段 Proxy-Authenticate 会把由代理服务器所要求的认证信息发送
给客户端。
       它与客户端和服务器之间的 HTTP 访问认证的行为相似, 不同之处在于其认证行为是在客户端与代理之间进行的。 而客户端与服务器之间进行认证时, 首部字段 WWW-Authorization 有着相同的作用。

6. Retry-After

       首部字段 Retry-After 告知客户端应该在多久之后再次发送请求。 主要配合状态码 503 Service Unavailable 响应, 或 3xx Redirect 响应一起使用。
       字段值可以指定为具体的日期时间(Wed, 04 Jul 2012 06: 34: 24GMT 等格式) , 也可以是创建响应后的秒数。

7. Server

       首部字段 Server 告知客户端当前服务器上安装的 HTTP 服务器应用程序的信息。 不单单会标出服务器上的软件应用名称, 还有可能包括版本号和安装时启用的可选项。

8. Vary

       首部字段 Vary 可对缓存进行控制。 源服务器会向代理服务器传达关于本地缓存使用方法的命令。

       从代理服务器接收到源服务器返回包含 Vary 指定项的响应之后, 若再要进行缓存, 仅对请求中含有相同 Vary 指定首部字段的请求返回缓存。 即使对相同资源发起请求, 但由于 Vary 指定的首部字段不相同, 因此必须要从源服务器重新获取资源。

9. WWW-Authenticate

       首部字段 WWW-Authenticate 用于 HTTP 访问认证。 它会告知客户端适用于访问请求 URI 所指定资源的认证方案(Basic 或是 Digest) 和带参数提示的质询(challenge) 。 状态码 401 Unauthorized 响应中,肯定带有首部字段 WWW-Authenticate。
        上述示例中, realm 字段的字符串是为了辨别请求 URI 指定资源所受到的保护策略。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值