圖解HTTP----HTTP首部--響應首部字段

一、響應首部字段

響應首部字段是由服務器端客戶端返回響應報文中所使用的字段,用於補充響應的附加信息、服務器信息,以及對客戶端的附加要求等信息。

二、Accept-Ranges(告知客戶端服務器是否能處理範圍請求

Accept-Ranges: bytes

(1)首部字段Accept-Ranges是用來告知客戶端服務器是否能處理範圍請求,以指定獲取服務器某個部分的資源。

(2)可指定的字段值有兩種,可處理範圍請求時指定其爲bytes,反之則指定其爲none。

三、Age(源服務器在多久前創建了響應)

Age: 600

(1)首部字段Age能告知客戶端,源服務器在多久前創建了響應。字段值的單位爲

(2)若創建該響應的服務器是緩存服務器,Age值是指緩存後的響應再次發起認證到認證完成的時間值。

四、ETag(實體標識)

ETag: "82e22293907ce725faf67773957acd12"

(1)首部字段ETag能告知客戶端實體標識。它是一種將資源以字符串形似做唯一性標識的方式。

(2)服務器會爲每份資源分配對應的ETag值。

(3)當字段更新時,ETag值也需要更新。生成ETag值時,並沒有統一的算法規則,而僅僅是由服務器來分配。

(4)資源被緩存時,就會被分配唯一性標識

(5)強ETag值

ETag: "usagi-1234"

強ETag值,不論實體發生多麼細微的變化都會改變其值

(6)弱ETag值

ETag: W/"usagi-1234"

弱ETag值只用於提示資源是否相同。只有資源發生了根本改變,產生差異時纔會改變ETag值。這時,會在字段值最開始處附加W/

五、Location(重定向)

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

(1)使用首部字段Location可以將響應接收方引導至某個與請求URI位置不同的資源

(2)基本上,該字段會配合3XX:Redirection的響應,提供重定向的URI。

(3)幾乎所有的瀏覽器在接收到包含首部字段Location的響應後,都會強制性嘗試對已提示的重定向資源的訪問。

六、Proxy-Authenticate(將代理服務器所要求的認證信息發送給客戶端

Proxy-Authenticate: Basic realm="Usagidesign Auth"

(1)首部字段Proxy-Authenticate會把由代理服務器所要求的認證信息發送給客戶端

(2)它與客戶端和服務器之間的 HTTP 訪問認證的行爲相似,不同之處在於其認證行爲是在客戶端與代理之間進行的。

(3)而客戶端與服務器之間進行認證時,首部字段 WWW-Authorization 有着相同的作用。

七、Retry-After(告知客戶端應該在多久之後再次發送請求

Retry-After: 120

(1)首部字段Retry-After告知客戶端應該在多久之後再次發送請求

(2)主要配合狀態碼503 Service Unavailable 響應,或3xx Redirect響應一起使用。

(3)字段值可以指定爲具體的日期時間(Wed, 04 Jul 2012 06:3424 GMT 等格式),也可以是創建響應後的秒數。

八、server(當前服務器上安裝的HTTP服務器應用程序的信息

Server: Apache/2.2.17 (Unix)

Server: Apache/2.2.6 (Unix) PHP/5.2.5

(1)首部字段Server告知客戶端當前服務器上安裝的HTTP服務器應用程序的信息

(2)不單單會標出服務器上的軟件應用的名稱,還有可能包含版本號和安裝時啓用的可選項。

九、Vary(對緩存進行控制,僅對請求中含有相同Vary指定首部字段的請求返回緩存

Vary: Accept-Language

(1)首部字段Vary可對緩存進行控制。源服務器會向代理服務器傳達關於本地緩存使用方法的命令。

(2)從代理服務器接收到源服務器返回包含Vary指定項的響應之後,若再要進行緩存,僅對請求中含有相同Vary指定首部字段的請求返回緩存

(3)即使對相同資源發起請求,但由於Vary指定的首部字段不相同,因此必須要從源服務器重新獲取資源。

十、WWW-Authenticate(HTTP訪問認證)

WWW-Authenticate: Basic realm="Usagidesign Auth"

(1)首部字段WWW-Authenticate用於HTTP訪問認證

(2)它會告知客戶端適用於訪問請求URI所指定資源的認證方案(Basic或是Digest)和帶參數提示的質詢(challenge)。狀態碼401 Unauthorized響應中,肯定帶有首部字段WWW-Authenticate。

(3)realm 字段的字符串是爲了辨別請求 URI 指定資源所受到的保護策略。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章