請求頭:瀏覽器向伺服器傳送請求的資料,資源。
響應頭:伺服器向瀏覽器響應資料,告訴瀏覽器我是誰,我要你怎麼做。如,我是nginx,給你的資源是正確的200 還是錯誤的404,我要你快取多久。
常見的請求頭:
accept: text/html,image/*
瀏覽器可以接收的型別
accept-charset: iso-8859-1
瀏覽器可以接收的編碼型別
accept-encoding: gzip,compress
瀏覽器可以接收壓縮編碼型別
accept-language: en-us,zh-cn
瀏覽器可以接收的語言和國家型別
host: www.lks.cn:80
瀏覽器請求的主機和埠
if-modified-since: tue, 11 jul 2000 18:23:51 gmt 某個頁面快取時間
referer:
請求來自於哪個頁面
user-agent: mozilla/4.0 compatible; msie 5.5; windows nt 5.0 瀏覽器相關資訊
cookie:
瀏覽器暫存伺服器傳送的資訊
connection: close1.0/keep-alive1.1
http請求的版本的特點
date: tue, 11 jul 2000 18:23:51gmt
請求**的時間
allow:get
請求的方法 get 常見的還有post
keep-alive:5
連線的時間;5
connection:keep-alive
是否是長連線
cache-control:max-age=300
快取的最長時間 300s
常見的響應頭:
location:
控制瀏覽器顯示哪個頁面
server:apache nginx
伺服器的型別
content-encoding: gzip
伺服器傳送的壓縮編碼方式
content-length: 80
伺服器傳送顯示的位元組碼長度
content-language: zh-cn
伺服器傳送內容的語言和國家名
content-type: image/jpeg; charset=utf-8
伺服器傳送內容的型別和編碼型別
last-modified: tue, 11 jul 2000 18:23:51gmt 伺服器最後一次修改的時間
refresh: 1;url=
控制瀏覽器1秒鐘後**url所指向的頁面
transfer-encoding: chunked
伺服器分塊傳遞資料到客戶端
set-cookie:ss=q0=5lb_nq; path=/search 伺服器傳送cookie相關的資訊
expires: -1
資源的過期時間,提供給瀏覽器快取資料,-1永遠過期
cache-control: no-cache
告訴瀏覽器,一定要回伺服器校驗,不管有沒有快取資料。
pragma: no-cache
伺服器控制瀏覽器不要快取網頁
請求的版本的特點
date: tue, 11 jul 2000 18:23:51 gmt 響應**的時間
etag:「ihfdgkdgnp98hdfg」 資源實體的標識(唯一標識,類似md5值,檔案有修改md5就不一樣)
關於快取相關頭的解釋:
expires
乙個gmt時間,試圖告知瀏覽器,在此日期內,可以信任並使用對應快取中的副本,缺點是,一但客戶端日期不準確.則可能導致失效.
pragma : no-cache
這個是http1.0中的常規頭,作用同http1.1的 cache-control : no-cache
last-modified
乙個gmt時間,告知被請求實體的最後修改時間.用於瀏覽器校驗其快取副本是否仍然可以信任.與其相關的兩個條件請求標頭:
1) if-modified-since
僅在get方法中意義,這個也是比較常見的。 如果實體在指定時間後,沒有修改則返回乙個304,否則返回乙個常規的get請求的響應(比如200),靜態檔案沒有修改返回304是好的,因為它只是回伺服器校驗一下是否有修改,而並沒有像200那樣重新請求資料。
2) if-unmodified-since:
如果實體沒有任何修改,那麼就可以直接執行該請求, 而如果有修改,則返回乙個412 precondition failed狀態碼,並且拋棄該方法對應的行為操作(get方法除外).
cache-control
(http1.1的常見頭)
1) public
僅體現在響應頭,通知瀏覽器可以無條件的快取該響應。
2) private
僅體現在響應頭,通知瀏覽器只針對單個使用者快取響應. 且可以具體指定某個欄位.如private –「username」
3) no-cache
a) 請求頭中:告訴瀏覽器回去伺服器取資料,並驗證你的快取(如果有的話)。
b) 響應頭中:告訴瀏覽器,一定要回伺服器校驗,不管有沒有快取資料。 如果確定沒有被改,可以使用快取中 的資料
4) no-store
告訴瀏覽器任何情況下都不要被快取。
5) max-age
a) 請求頭中:強制響應瀏覽器,根據該值,校驗快取.即與自身的age值,與請求時間做比較.如果超出max- age值,則強制去伺服器端驗證.以確保返回乙個新鮮的響應.其功能本質上與傳統的expires類似,但區別在於ex pires是根據某個特定日期值做比較.一但快取者自身的時間不準確.則結果可能就是錯誤的.而max-age,顯然無 此問題. max-age的優先順序也是高於expires的.
b) 響應頭中:同上
http請求頭響應頭
今天的內容首先是http協議其中包括請求頭 request 和響應頭 response 請求頭中包含 accept 告訴伺服器,瀏覽器所支援的資料型別 accept charset 告訴伺服器,瀏覽器支援的字符集 accept encoding 告訴伺服器,瀏覽器所支援的資料解壓演算法 accept...
關於HTTP請求頭與響應頭
http請求頭格式 get 請求的方式 url 請求的目標資源 http 1.1 請求採用的協議和版本號 首部欄位名 值 accept 客戶端能接收的資源型別 accept language en us 客戶端接收的語言型別 connection keep alive 維護客戶端和服務端的連線關係 ...
http請求頭和響應頭
http請求頭如下格式 訊息頭詳解 1.accept 用於告訴伺服器,客戶機支援的資料型別 2.accept charset 用於告訴伺服器,客戶機採用的編碼 3.accept encoding 用於告訴伺服器,客戶機支援的壓縮格式 4.accept language 用於告訴伺服器,客戶機的語言環...