6.4响应首部字段

来源:互联网 发布:网络协议实验报告 编辑:程序博客网 时间:2024/06/05 20:42

一, Accept-Ranges

        该首部字段用来告知客户端是否能够处理范围请求(* 范围请求即在请求报文中加上首部字段Range来获取服务器文件的部分资源)。

举例:

         (1)可处理范围请求

                     Accept-Ranges:bytes

         (2)不可处理范围请求

                     Accept-Ranges:none


二,Age

        该首部字段用来告知客户端代理服务器确认缓存的时间。

举例:

          Age:600

(1) 创建该响应的是代理服务器

(2)600是指缓存后的响应再次向源服务器认证到认证完成的时间,单位是秒

(3)代理创建响应时必须加上首部字段Age


三,ETag

        该首部字段用来标识服务器端的资源。通俗来讲就是通过ETag值来指定服务器端的资源。

举例:

        ETag:uasgi-1234(字符串)

(1)它是一种可以用字符串来标识资源的一种方式,服务器会为每份资源分配一个ETag值。

(2)资源发生更新时,ETag值会发生改变。

(3)中文版和英文版的资源的URI相同,ETag值却不相同。

ETag分为强ETag值和弱ETag值

强ETag值,不论发生多么细微的变化都会改变其值。

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

      ETag:W/“usagi-1234”


四,Location

           该首部字段可以将响应接收方(客户端,如浏览器)引导至某个与请求URI位置不同的资源,当请求的资源位置改变时会返回该响应。

举例:

          请求报文:

                  GET /sample.htm

          响应报文:

                  302 Found

                  Location:http://www.usagidesign.jp/sample.htm

 几乎所有的浏览器在接收到含有Location的首部字段后都会按照重定向的位置进行访问。


五,Proxy-Authenticate

           该首部字段会把代理服务器要求的认证信息发送给客户端。

举例:

          请求报文:                                                                                                              请求报文:

                 GET /sample.htm                                                                                                         GET /sample.htm

           响应报文:                                                                                                              响应报文:

                                                                                                                                                         401 Unauthorized

                 Proxy-Authenticate:Basic realm=“Usagidesign Auth”                                        WWW-Authenticate:...

           请求报文:                                                                                                               请求报文:

                 Proxy-Authorization:...(认证信息)                                                                          Authorization:...(认证信息)

(1)左边是代理服务器与客户端之间的认证过程,右边是服务器与客户端之间的认证过程。

(2)Basic是认证方案,后面是带参数的质询。

(3)客户端在发送完认证信息后,服务器会返回响应。


六,Retry-After

             该首部字段用来告知客户端在多久之后再次发送请求。

举例:

          Retry-After:120

          或

          Retry-After:Wed,04 Jul 2012 06:34:24 GMT

(1)当服务器没法立刻返回响应时便返回Retry-After

(2)第一个是指过2分钟后再次发送请求

(3)也可以指定具体的时间,如第二个。


七, Sever

         该首部字段用来告知客户端服务器上安装的HTTP服务器应用程序的信息,包括名称,版本号和安装时启用的可选项

举例:

         Sever:Apache/2.2.17 (Unix)


八,Vary

         该首部字段用来控制管理缓存。

举例:

         请求报文:

               GET /sample.html

               Accept-Language:en-us

        响应报文:

               Vary:Accept-Language

(1)服务器响应报文指定Vary首部字段的值为Accept-Language

(2)代理服务器在接收响应时进行缓存

(3)若客户端在次请求相同资源,并且仍然请求英文版的资源时(也就是Accept-Language的字段值相同时),返回缓存

(4)如果请求的不是英文版资源,则从服务器返回响应。



         


0 0
原创粉丝点击