請求頭(Request):
Accept:text/html application/xml 告訴服務器客戶端瀏覽器這邊可以出里什么數據;
Accept-Encodeing:gzip 告訴服務器我能支持什么樣的壓縮格式
accept-language:告訴服務器瀏覽器支持的語言
Cache-control:告訴服務器是否緩存
Connection:keep-alive 告訴服務器當前保持活躍(與服務器處於鏈接狀態)
Host:遠程服務器的域名
User-agent:客戶端的一些信息,瀏覽器信息 版本
referer:當前頁面上一個頁面地址。一般用於服務器判斷是否為同一個域名下的請求
返回頭(response-header
):
cache-control:private/no-cache; 私有的不需要緩存/no-cache也不需要緩存
connection:keep-live; 服務器同意保持連接
content-Enconding:gzip;除去頭的剩余部分壓縮返回格式
content-length:內容長度
content-type:text/css;返回內容支持格式
Date: 時間
server:ngnix 服務器類型
set-Cookie:服務器向客戶端設置cookie 第一次訪問服務器會下發cookie當作身份認證信息,第二次訪問服務器再把cookie送給服務器,可以當作認證信息
last-modified: 時間戳 當瀏覽器請求時先把這個時間戳發送給服務器,服務器判斷是否過期。判斷過etag在向服務器請求帶有if-modefidied-since.服務器判斷是否過期未過期返回304,過期返回200
expires 也是時間戳判斷緩存用
etag:版本專有的加密指紋。(有的網站不用,並非必須)優先檢查etag再檢查last-modified的時間戳。向服務器請求帶if-none-match,服務器判斷是否過期未過期返回304,過期返回200
// 注釋:第一次請求出來的數據先進行緩存協商,是否緩存expires,cache-control 緩存時間,etag,last-modified等
//注釋:第多次訪問的時候,瀏覽器先判斷是否有緩存,是否過期
//未過期:直接從緩存中讀取。
//http狀態碼
//1.指示信息--表示請求已經接受,繼續處理
//2.成功--表示請求已經被成功接受,理解
//3.重定向--表示完成請求必須進行更進一步操作
//4.客戶端錯誤--請求有語法錯誤或者請求無法實現
//5.服務器端錯誤--服務器未能實現合法的請求
