HTTP請求首部字段詳解(三)

2021-08-28 10:27:45 字數 1210 閱讀 2953

請求首部字段是從客戶端向伺服器端傳送請求報文中所需要使用的字段。它用來補充請求的附加資訊、客戶端資訊、對相應內容相關的優先順序等。

1>max-forwards

通過trace或者options方法傳送請求時,通過在該字段指定十進位制數字來指定最多可經過的伺服器數目。伺服器在往下乙個伺服器傳送請求的過程中,會將該字段的值減一後重新賦值。當伺服器接收到該字段的值為0的請求時,則不再**而是直接返回響應。

使用http協議通訊時,請求可能會經過**等多台伺服器。途中如果某台伺服器出現故障,則客戶端將不會收到返回的資訊。可以通過靈活使用該字段對上述問題展開調查,我們至少可以對經由那台伺服器的通訊路徑的狀況有所把握。

2> proxy-authorization

當客戶端接收到**伺服器發來的認證質詢時,會傳送包含該首部欄位的請求,以告知伺服器認證所需要的資訊。

這個行為與客戶端和伺服器之間的http訪問認證相類似的,不同之處在於,該認證行為只會出現在客戶端和**之間。

3>range

對於只需要獲取部分資源的範圍請求,包含首部欄位range即可告知伺服器資源的指定範圍。

上面的示例表示請求獲取從5001位元組到第10000位元組的資源。

接收到附帶range首部字段請求的伺服器,會在處理請求之後返回狀態碼206 partial content的響應。無法處理該範圍請求時,則會返回狀態碼200ok的響應及全部資源。

4>referer

該首部欄位會告知伺服器請求的原始資源的uri。

客戶端一般都會傳送referer首部欄位給伺服器。但是當在瀏覽器的位址列輸入uri,或者出於安全考慮時,也可以不傳送該首部字段。

因為原始的uri中的查詢字串可能包含有id、密碼等保密資訊,如果寫進referer**給其他伺服器,可能導致保密資訊的洩漏。

另外,該首部欄位的正確英文拼音是referrer,但是因為制定協議時的錯誤,人們也就將錯就錯沿用了該字段的名稱。

5>te

該首部欄位會告知伺服器客戶端可以處理響應的傳輸編碼方式以及對應的優先順序。它和首部欄位accept-encoding的功能很像,但是用於傳輸編碼。

6>user-agent

該欄位用於傳達瀏覽器的種類。

該字段會建立請求的瀏覽器和使用者**名稱等資訊傳輸給伺服器。

由網路爬蟲發起請求時,有可能會在字段內新增爬蟲作者的電子郵件位址。此外,如果請求經過**,那麼中間可能會被新增上**伺服器的名稱。

HTTP請求首部字段詳解(二)

請求首部字段是從客戶端向伺服器端傳送請求報文中所需要使用的字段。它用來補充請求的附加資訊 客戶端資訊 對相應內容相關的優先順序等。本文詳細講解以下請求首部字段 except from host if match if modified since if none match if range和 if...

HTTP請求首部欄位與響應首部字段

一 請求首部字段 accept首部可通知伺服器,使用者 能夠處理的 型別及 型別的相對優先順序 用來通知伺服器使用者 支援的字符集及字符集的相對優先順序 accept charset iso 8859 5,unicode 1 1 q 0.8 用來告知伺服器使用者 支援的內容編碼及內容編碼的優先順序順...

HTTP 實體首部字段詳解

實體首部欄位是包含在請求報文和響應報文中的實體部分所使用的首部。用於補充內容的更新時間和與實體相關的資訊。allow 該首部字段用於告知客戶端能夠支援request uri指定資源的所有http方法。當伺服器收到不支援的http方法時,會以狀態碼405 method not allowed作為響應返...