Http學習筆記(二)
4種HTTP首部字段類型
- 通用首部字段(General Header Fields):請求報文和響應報文兩方都會使用的首部。
- 請求首部字段(Request Header Fields):從客戶端向服務器端發送請求報文時使用的首部。補充了請求的附加內容、客戶端信息、響應內容相關優先級等信息。
- 響應首部字段(Response Header Fields):從服務器端向客戶端返回響應報文時使用的首部。補充了響應的附加內容,也會要求客戶端附加額外的內容信息。
- 實體首部字段(Entity Header Fields):針對請求報文和響應報文的實體部分使用的首部。補充了資源內容更新時間等於實體相關的內容。
HTTP/1.1 規範定義了47種首部字段(RFC2616)緩存
通用首部字段
Cache-Control |
控制緩存的行爲 |
Connection |
指明首部鏈接的管理 |
Date |
建立報文的日期時間 |
Pragma |
報文指令 |
Trailer |
報文末端的首部一覽 |
Transfer-Encoding |
指定報文主體的傳輸編碼方式 |
Upgrade |
升級爲其它協議 |
Via |
代理服務器的相關信息 |
Warning |
錯誤通知 |
請求首部字段
Accept |
用戶代理可處理的媒體類型 |
Accept-Charset |
優先的字符集 |
Accept-Encoding |
優先的內容編碼 |
Accept-Language |
優先的語言(天然語言) |
Authorization |
Web認證信息 |
Expect |
期待服務器的特定行爲 |
From |
用戶的電子郵箱地址 |
Host |
請求資源所在的服務器 |
If-Match |
比較實體標記(ETag) |
If-Modified-Since |
比較資源的更新時間 |
If-None-Match |
比較實體標記(與If-Match相反) |
If-Range |
資源未更新時發送實體Byte的範圍請求 |
If-Unmodified-Since |
比較資源的更新時間(與If-Modified-Since相反) |
Max-Forwards |
最大傳輸跳數 |
Proxy-Authorization |
代理服務器要求客戶端的認證信息 |
Range |
實體的字節範圍請求 |
Referer |
對請求中URI的原始獲取方 |
TE |
傳輸編碼的優先級 |
User-Agent |
HTTP客戶端程序的信息 |
響應首部字段
Accept-Ranges |
是否接受字節範圍請求 |
Age |
推算資源建立通過時間 |
ETag |
資源的匹配信息 |
Location |
令客戶端重定向至指定URI |
Proxy-Authenticate |
代理服務器對客戶端的認證信息 |
Retry-After |
對再次發起請求的時機要求 |
Server |
HTTP服務器的安裝信息 |
Vary |
代理服務器緩存的管理信息 |
WWW-Authenticate |
服務器對客戶端的認證信息 |
實體首部字段
Allow |
資源可支持的HTTP方法 |
Content-Encoding |
實體主體適用的編碼方式 |
Content-Language |
實體主題的天然語言 |
Content-Length |
實體主體的大小(單位:字節) |
Content-Location |
替代對應資源的URI |
Content-MD5 |
實體主體的報文摘要 |
Content-Range |
實體主體的位置範圍 |
Content-Type |
實體主體的媒體類型 |
Expires |
實體主體過時的日期時間 |
Last-Modified |
資源的最後修改日期時間 |
還有其它非正式的首部字段在RFC4229 HTTP Header Field Registrations中
如:Cookie、Set-Cookie、Content-Disposition等服務器