Request header:
User-Agent:告訴Http服務器,客戶端使用的操做系統和瀏覽器名稱和版本(這也是區分pc端或者app端的方式)
Clint頭域:
Accept:瀏覽器端能夠接受的媒體類型(MIME);
Accept-Charset:瀏覽器可接受的字符集;
Accept-Encoding:瀏覽器申明本身接受的編碼方法,壓縮方式,是否支持壓縮,支持什麼壓縮方法
Accept-Language:申明本身接受的語言
User-Agent:客戶端使用的操做系統各瀏覽器的名稱和版本
clint頭域的做用,客戶端和服務器端要進行通訊,那麼客戶端就得向服務器申明本身交流的方式(User-Agent)、交流的語言(Accept-Language)、交流的字體(accept-Encoding),已經客戶端接受的內容(accept)等
Cache頭域:
If-Modified-Since:把瀏覽器端緩存頁面的最後修改時間發送到服務器上,服務器會把這個時間與時間文件的修改時間進行比對 ,時間一直返回304使用本地緩存數據,時間不一致返回200和新的文件內容,客戶端接到以後會丟棄舊文件再把新文件緩存起來並顯示在瀏覽器中 。
If-None-Match:和ETag一塊兒工做,工做原理是HTTP Response中添加ETag信息,當用戶再次請求該資源時,將在HTTP Request中加入If-None-Match信息(ETag的值)。若是服務器驗證資源的ETag沒有改變(該資源沒有更新),獎返回一個304狀態告訴客戶端使用本地魂村文件。不然將返回200狀態和新的資源和Etage,使用這樣的機制將提升網站的新性能。
Pragma:做用是防止頁面被緩存,在HTTP/1.1版本中,它和Cache-Control:no-cache做用如出一轍
Cache-Control:用來指定Response-Request遵循的緩存機制,以下:
Cache-Control:Public能夠被任何緩存所緩存()
Cache-Control:Private內容只緩存到私有緩存中
Cache-Control:no-cache全部內容都不會被緩存
Cookie/Login頭域
Cookie:最重要的header,獎cookie的值發送給HTTP服務器
Transport頭域
Connection:鏈接的狀態,keep-alive當打開一個網頁後,客戶端和服務器以前傳輸Http數據到TCP鏈接誒不會關閉,若是客戶端再次訪問這個服務器的網頁,會繼續使用這條已經創建的鏈接;close當打開一個請求完成後,客戶端和服務器以前用於傳輸HTTP數據的TCP鏈接會關閉,當客戶端再次發送請求,須要從新創建TCP鏈接
Host(發送請求時,該報頭域是必須的):請求報頭域而主要用於指定被請求資源的Internet主機和端口號,他一般從HTTP URL中提取出來的,host中端口號省卻卻表示默認端口後80
Entity頭域
Content-Length:發送給HTTp服務器數據的長度
Content-Type:互聯網媒體類型
Miscellaneous頭域
Referer:提供Request的上下文信息的服務器,告訴服務器我是從哪一個鏈接過來的。
Ajax請求方式
服務器判斷request請求是同步仍是異步,若是header中有X-Requested-With:XMLHttpRequest表示爲異步請求,當X-Requested-With:null是爲同步請求瀏覽器