瀏覽器快取

2021-09-25 18:01:11 字數 901 閱讀 3605

瀏覽器快取分為強快取和協商快取。當客戶端請求某個資源時,獲取快取的流程如下

先根據這個資源的一些 http header 判斷它是否命中強快取,如果命中,則直接從本地獲取快取資源,不會發請求到伺服器;

當強快取沒有命中時,客戶端會傳送請求到伺服器,伺服器通過另一些 request header驗證這個資源是否命中協商快取,稱為 http再驗證,如果命中,伺服器將請求返回,但不返回資源,而是告訴客戶端直接從快取中獲取,客戶端收到返回後就會從快取中獲取資源;

強快取和協商快取共同之處在於,如果命中快取,伺服器都不會返回資源;

區別是,強快取不對傳送請求到伺服器,但協商快取會。

當協商快取也沒命中時,伺服器就會將資源傳送回客戶端。

當 ctrl+f5 強制重新整理網頁時,直接從伺服器載入,跳過強快取和協商快取;

當 f5 重新整理網頁時,跳過強快取,但是會檢查協商快取;

expires(該字段是 http1.0 時的規範,值為乙個絕對時間的 gmt 格式的時間字串,代表快取資源的過期時間)

cache-control:max-age(該字段是 http1.1 的規範,強快取利用其 max-age 值來判斷快取資源的最大生命週期,它的值單位為秒)

last-modified(值為資源最後更新時間,隨伺服器response返回)

if-modified-since(通過比較兩個時間來判斷資源在兩次請求期間是否有過修改,如果沒有修改,則命中協商快取)

etag(表示資源內容的唯一標識,隨伺服器response返回)

if-none-match(伺服器通過比較請求頭部的if-none-match與當前資源的etag是否一致來判斷資源是否在兩次請求之間有過修改,如果沒有修改,則命中協商快取)

快取 瀏覽器快取

瀏覽器快取 brower caching 是瀏覽器在本地磁碟對使用者最近請求過的文件進行儲存,當訪問者再次訪問同一頁面時,瀏覽器就可以直接從本地磁碟載入文件 1 瀏覽器第一次請求時,會發出一組 http 頭,用來指導瀏覽器如何進行快取。伺服器規定乙個資源是否要進行快取,主要由響應頭中的expires...

瀏覽器快取

1.為什麼使用瀏覽器快取 以前了解的動態指令碼加速,或者動態內容快取之類,他們的原理都是避免伺服器重複計算,結果仍保留在伺服器端,這樣獲取資料還得從伺服器檢索然後傳送到使用者瀏覽器,如果我們把這些結果放在瀏覽器中,就省去了伺服器的查詢和網路傳輸,瀏覽器快取很好的實現了這個功能 2.瀏覽器快取存放在哪...

瀏覽器快取

瀏覽器快取知識歸納 瀏覽器快取是提公升網頁效能的一大利器,但是,也是一把雙刃劍。利用的好網頁的效能會有大幅度提公升,伺服器的壓力也會減小。利用的不好,也會遇到很多的問題。本文結合瀏覽器快取的知識,結合真實案例進行分析,希望對讀者有所幫助。瀏覽器快取分類 瀏覽器快取分為強快取和協商快取,瀏覽器載入乙個...