圖解http:第六章http首部

在這裏插入圖片描述
在這裏插入圖片描述

HTTP/1.1 首部字段一覽

HTTP/1.1 規範定義瞭如下 47 種首部字段。
在這裏插入圖片描述
6-2:請求首部字段在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述

除此之外還有很多經常使用的在RFC中定義的首部字段如:Cookie,Set-Cookie和Content-Disposition.這些都被歸納到RFC4229 HTTP Header Field Registrations

End-to-end 首部和 Hop-by-hop首部

端到端(End-to-end):分類到這個類的首部一定會被轉發給對應的最終接收目標,且必須保存在由緩存產生的響應。
逐跳首部(Hop-By-Hop):只對單次轉發有效,會因爲通過緩存或代理不再轉發。HTTP/1.1後的版本,如果要使用這個,要提供Connection首部字段。有這八個首字段屬於:
Connection Keep-Alive Proxy-Authenticate Proxy-Authorization
Trailer TE Transfer-Encoding Upgrade …
字段詳解

通用首部字段

這意味着能分別在請求報文和響應報文中使用。

Cache-Control

指令的參數是可選的, 多個指令之間通過“,”分隔。 首部字段 CacheControl 的指令可用於請求及響應時。
如:
Cache-Control: private, max-age=0, no-cache
在這裏插入圖片描述
在這裏插入圖片描述

no-cache:

使用 no-cache 指令的目的是爲了防止從緩存中返回過期的資源。 客戶端發送的請求中如果包含 no-cache 指令,則表示客戶端將不會接 收緩存過的響應。於是,“中間”的緩存服務器必須把客戶端請求轉發 給源服務器。
如果服務器返回的響應中包含 no-cache 指令,那麼緩存服務器不能對 資源進行緩存。源服務器以後也將不再對緩存服務器請求中提出的資 源有效性進行確認,且禁止其對響應資源進行緩存操作。

max-age:

當客戶端發送的請求中包含 max-age 指令時,如果判定緩存資源的緩 存時間數值比指定時間的數值更小,那麼客戶端就接收緩存的資源。 另外,當指定 max-age 值爲 0,那麼緩存服務器通常需要將請求轉發 給源服務器。

Connection

控制不再轉發給代理的首部字段
管理持久連接

如:Connection: Keep-Alive

Via

使用首部字段 Via 是爲了追蹤客戶端與服務器之間的請求和響應報文 的傳輸路徑。
報文經過代理或網關時,會先在首部字段 Via 中附加該服務器的信 息,然後再進行轉發。這個做法和 traceroute 及電子郵件的 Received 首部的工作機制很類似。
首部字段 Via 不僅用於追蹤報文的轉發,還可避免請求迴環的發生。 所以必須在經過代理時附加該首部字段內容。

Warning

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