原作者: 留七七, 地址:http://www.jianshu.com/p/6e86903d74f7
一、常用標准請求頭字段
Accept 設置接受的內容類型
Accept-Charset 設置接受的字符編碼
Accept-Encoding 設置接受的編碼格式
Accept-Datetime 設置接受的版本時間
Accept-Language 設置接受的語言
Authorization 設置HTTP身份驗證的憑證
Cache-Control 設置請求響應鏈上所有的緩存機制必須遵守的指令
Connection 設置當前連接和hop-by-hop協議請求字段列表的控制選項
Content-Length 設置請求體的字節長度
Content-MD5 設置基於MD5算法對請求體內容進行Base64二進制編碼
Content-Type 設置請求體的MIME類型(適用POST和PUT請求)
Cookie 設置服務器使用Set-Cookie發送的http cookie
Date 設置消息發送的日期和時間
Expect 標識客戶端需要的特殊瀏覽器行為
Forwarded 披露客戶端通過http代理連接web服務的源信息
From 設置發送請求的用戶的email地址
Host 設置服務器域名和TCP端口號,如果使用的是服務請求標准端口號,端口號可以省略
If-Match 設置客戶端的ETag,當時客戶端ETag和服務器生成的ETag一致才執行,適用於更新自從上次更新之后沒有改變的資源
If-Modified-Since 設置更新時間,從更新時間到服務端接受請求這段時間內如果資源沒有改變,允許服務端返回304 Not Modified
If-None-Match 設置客戶端ETag,如果和服務端接受請求生成的ETage相同,允許服務端返回304 Not Modified
If-Range 設置客戶端ETag,如果和服務端接受請求生成的ETage相同,返回缺失的實體部分;否則返回整個新的實體
If-Unmodified-Since 設置更新時間,只有從更新時間到服務端接受請求這段時間內實體沒有改變,服務端才會發送響應
Max-Forwards 限制代理或網關轉發消息的次數
Origin 標識跨域資源請求(請求服務端設置Access-Control-Allow-Origin響應字段)
Pragma 設置特殊實現字段,可能會對請求響應鏈有多種影響
Proxy-Authorization 為連接代理授權認證信息
Range 請求部分實體,設置請求實體的字節數范圍,具體可以參見HTTP/1.1中的Byte serving
Referer 設置前一個頁面的地址,並且前一個頁面中的連接指向當前請求,意思就是如果當前請求是在A頁面中發送的,那么referer就是A
頁面的url地址(軼事:這個單詞正確的拼法應該是"referrer",但是在很多規范中都拼成了"referer",所以這個單詞也就成為標准用法)
TE 設置用戶代理期望接受的傳輸編碼格式,和響應頭中的Transfer-Encoding字段一樣
Upgrade 請求服務端升級協議
User-Agent 用戶代理的字符串值
Via 通知服務器代理請求
Warning 實體可能會發生的問題的通用警告
二、常用非標准請求頭字段
X-Requested-With 標識Ajax請求,大部分js框架發送請求時都會設置它為XMLHttpRequest
DNT 請求web應用禁用用戶追蹤
X-Forwarded-For 一個事實標准,用來標識客戶端通過HTTP代理或者負載均衡器連接的web服務器的原始IP地址
X-Forwarded-Host 一個事實標准,用來標識客戶端在HTTP請求頭中請求的原始host,因為主機名或者反向代理的端口可能與處理請求的原始服務器不同
X-Forwarded-Proto 一個事實標准,用來標識HTTP原始協議,因為反向代理或者負載均衡器和web服務器可能使用http,但是請求到反向代理使用的是https
Front-End-Https 微軟應用程序和負載均衡器使用的非標准header字段 Front-End-Https: on
X-Http-Method-Override 請求web應用時,使用header字段中給定的方法(通常是put或者delete)覆蓋請求中指定的方法(通常是post),如果用戶代理或者防火
牆不支持直接使用put或者delete方法發送請求時,可以使用這個字段
X-ATT-DeviceId 允許更簡單的解析用戶代理在AT&T設備上的MakeModel/Firmware
X-Wap-Profile 設置描述當前連接設備的詳細信息的xml文件在網絡中的位置
Proxy-Connection 早起HTTP版本中的一個誤稱,現在使用標准的connection字段
X-UIDH 服務端深度包檢測插入的一個唯一ID標識Verizon Wireless的客戶
X-Csrf-Token,X-CSRFToken,X-XSRF-TOKEN 防止跨站請求偽造
X-Request-ID,X-Correlation-ID 標識客戶端和服務端的HTTP請求
三、常用標准響應頭
Access-Control-Allow-Origin 指定哪些站點可以參與跨站資源共享
Accept-Patch 指定服務器支持的補丁文檔格式,適用於http的patch方法
Accept-Ranges 服務器通過byte serving支持的部分內容范圍類型
Age 對象在代理緩存中暫存的秒數
Allow 設置特定資源的有效行為,適用方法不被允許的http 405錯誤
Alt-Svc 服務器使用"Alt-Svc"(Alternative Servicesde的縮寫)頭標識資源可以通過不同的網絡位置或者不同的網絡協議獲取
Cache-Control 告訴服務端到客戶端所有的緩存機制是否可以緩存這個對象,單位是秒
Connection 設置當前連接和hop-by-hop協議請求字段列表的控制選項
Content-Disposition 告訴客戶端彈出一個文件下載框,並且可以指定下載文件名
Content-Encoding 設置數據使用的編碼類型
Content-Language 為封閉內容設置自然語言或者目標用戶語言
Content-Length 響應體的字節長度
Content-Location 設置返回數據的另一個位置
Content-MD5 設置基於MD5算法對響應體內容進行Base64二進制編碼
Content-Range 標識響應體內容屬於完整消息體中的那一部分
Content-Type 設置響應體的MIME類型
Date 設置消息發送的日期和時間
ETag 特定版本資源的標識符,通常是消息摘要
Expires 設置響應體的過期時間
Last-Modified 設置請求對象最后一次的修改日期
Link 設置與其他資源的類型關系
Location 在重定向中或者創建新資源時使用
P3P 以P3P:CP="your_compact_policy"的格式設置支持P3P(Platform for Privacy Preferences Project)策略,
大部分瀏覽器沒有完全支持P3P策略,許多站點設置假的策略內容欺騙支持P3P策略的瀏覽器以獲取第三方cookie的授權
Pragma 設置特殊實現字段,可能會對請求響應鏈有多種影響
Proxy-Authenticate 設置訪問代理的請求權限
Public-Key-Pins 設置站點的授權TLS證書
Refresh "重定向或者新資源創建時使用,在頁面的頭部有個擴展可以實現相似的功能,並且大部分瀏覽器都支持
Retry-After 如果實體暫時不可用,可以設置這個值讓客戶端重試,可以使用時間段(單位是秒)或者HTTP時間
Server 服務器名稱
Set-Cookie 設置HTTP Cookie
Status 設置HTTP響應狀態
Strict-Transport-Security 一種HSTS策略通知HTTP客戶端緩存HTTPS策略多長時間以及是否應用到子域
Trailer 標識給定的header字段將展示在后續的chunked編碼的消息中
Transfer-Encoding 設置傳輸實體的編碼格式,目前支持的格式: chunked, compress, deflate, gzip, identity
TSV Tracking Status Value, 在響應中設置給DNT(do-not-track),可能的取值
"!" — under construction
"?" — dynamic
"G" — gateway to multiple parties
"N" — not tracking
"T" — tracking
"C" — tracking with consent
"P" — tracking only if consented
"D" — disregarding DNT
"U" — updated
Upgrade 請求客戶端升級協議
Vary 通知下級代理如何匹配未來的請求頭已讓其決定緩存的響應是否可用而不是重新從源主機請求新的
Via 通知客戶端代理,通過其要發送什么響應
Warning 實體可能會發生的問題的通用警告
WWW-Authenticate 標識訪問請求實體的身份驗證方案
X-Frame-Options 點擊劫持保護:
deny frame 中不渲染
sameorigin 如果源不匹配不渲染
allow-from 允許指定位置訪問
allowall 不標准,允許任意位置訪問
四、常用的非標准響應頭
X-XSS-Protection 過濾跨站腳本
Content-Security-Policy, X-Content-Security-Policy,X-WebKit-CSP 定義內容安全策略
X-Content-Type-Options 唯一的取值是"",阻止IE在響應中嗅探定義的內容格式以外的其他MIME格式
X-Powered-By 指定支持web應用的技術
X-UA-Compatible 推薦首選的渲染引擎來展示內容,通常向后兼容,也用於激活IE中內嵌chrome框架插件
X-Content-Duration 提供音視頻的持續時間,單位是秒,只有Gecko內核瀏覽器支持
Upgrade-Insecure-Requests 標識服務器是否可以處理HTTPS協議
X-Request-ID,X-Correlation-ID 標識一個客戶端和服務端的請求
