1. 程式人生 > 其它 >http快取控制

http快取控制

快取過程

1.在瀏覽器第一次發起請求時,本地無快取,向web伺服器傳送請求,伺服器起端響應請求,瀏覽器端快取。在第一次請求時,伺服器會將資源的最後修改時間last-modify,客戶端會記錄該事件,同時伺服器還會生成一個Etag值,傳送給客戶端,客戶端儲存。還會有cache-Control:max-age和expires欄位,用來表示快取的過期時間。

2. 當瀏覽器後續再進行請求傳送時,先通過cache-Control或expires判斷本地快取是否過期,cache-Control優先順序高,如果沒有則直接使用快取(強快取,此次請求不會與伺服器進行通訊),否則就會向伺服器傳送請求,請求頭中的if-modify-since對應伺服器響應的last-modify,if-None-Match對應etag。etag優先順序高於last-modify

3. 伺服器接收到請求後,先通過if-None-Match判斷資源是否修改,或者通過if-modify-since判斷,如果沒有修改,則返回304(not modify),表示快取可以直接使用(協商快取),否則響應對應的資源。

常用請求響應欄位

(23條訊息) 淺談http中的Cache-Control_小小郭-CSDN部落格_cache-control:no-cache

cache