請求頭部
Accept: 接收類型嘹履,表示瀏覽器支持的MIME類型
(對標服務端返回的Content-Type)
Accept-Encoding:瀏覽器支持的壓縮類型,如gzip等,超出類型不能接收
Content-Type:客戶端發(fā)送出去實體內容的類型
Cache-Control: 指定請求和響應遵循的緩存機制,如no-cache
If-Modified-Since:對應服務端的Last-Modified渐排,用來匹配看文件是否變動示绊,只能精確到1s之內戈轿,http1.0中
Expires:緩存控制玻侥,在這個時間內不會請求,直接使用緩存涣脚,http1.0示辈,而且是服務端時間
Max-age:代表資源在本地緩存多少秒,有效時間內不會請求遣蚀,而是使用緩存矾麻,http1.1中
If-None-Match:對應服務端的ETag,用來匹配文件內容是否改變(非常精確)芭梯,http1.1中
Cookie: 有cookie并且同域訪問時會自動帶上
Connection: 當瀏覽器與服務器通信時對于長連接如何進行處理,如keep-alive
Host:請求的服務器URL
Origin:最初的請求是從哪里發(fā)起的(只會精確到端口),Origin比Referer更尊重隱私
Referer:該頁面的來源URL(適用于所有類型的請求险耀,會精確到詳細頁面地址,csrf攔截常用到這個字段)
User-Agent:用戶客戶端的一些必要信息玖喘,如UA頭部等
響應頭部
Access-Control-Allow-Headers: 服務器端允許的請求Headers
Access-Control-Allow-Methods: 服務器端允許的請求方法
Access-Control-Allow-Origin: 服務器端允許的請求Origin頭部(譬如為*)
Content-Type:服務端返回的實體內容的類型
Date:數(shù)據(jù)從服務器發(fā)送的時間
Cache-Control:告訴瀏覽器或其他客戶甩牺,什么環(huán)境可以安全的緩存文檔
Last-Modified:請求資源的最后修改時間
Expires:應該在什么時候認為文檔已經(jīng)過期,從而不再緩存它
Max-age:客戶端的本地資源應該緩存多少秒,開啟了Cache-Control后有效
ETag:請求變量的實體標簽的當前值
Set-Cookie:設置和頁面關聯(lián)的cookie累奈,服務器通過這個頭部把cookie傳給客戶端
Keep-Alive:如果客戶端有keep-alive贬派,服務端也會有響應(如timeout=38)
Server:服務器的一些相關信息
一般來說,請求頭部和響應頭部是匹配分析的澎媒。
譬如搞乏,請求頭部的Accept要和響應頭部的Content-Type匹配,否則會報錯
譬如戒努,跨域請求時查描,請求頭部的Origin要匹配響應頭部的Access-Control-Allow-Origin,否則會報跨域錯誤
譬如,在使用緩存時冬三,請求頭部的If-Modified-Since、If-None-Match分別和響應頭部的Last-Modified缘缚、ETag對應
請求/響應實體
http請求時勾笆,除了頭部,還有消息實體桥滨,一般來說
請求實體中會將一些需要的參數(shù)都放入進入(用于post請求)窝爪。
譬如實體中可以放參數(shù)的序列化形式(a=1&b=2這種),或者直接放表單對象(Form Data對象齐媒,上傳時可以夾雜參數(shù)以及文件)蒲每,等等
而一般響應實體中,就是放服務端需要傳給客戶端的內容
一般現(xiàn)在的接口請求時喻括,實體中就是對于的信息的json格式邀杏,而像頁面請求這種,里面就是直接放了一個html字符串唬血,然后瀏覽器自己解析并渲染望蜡。