前端瀏覽器快取策略

2021-10-10 04:33:18 字數 1612 閱讀 4799

通常瀏覽器快取策略分為兩種:強快取和協商快取,並且快取策略都是通過設定http header來實現的

強快取

強快取可以通過設定兩種http header實現:expirescache-control。強快取表示在快取期間不需要請求,state code200

expires

expires: wed,

22 oct 201808:

41:00 gmt

expireshttp/1的產物,表示資源會在wed, 22 oct 2018 08:41:00 gmt後過期,需要再次請求。並且expires受限於本地時間,如果修改了本地時間,可能會造成快取失效。

從圖中我們可以看到,我們可以將多個指令配合起來一起使用,達到多個目的。比如說我們希望資源能被快取下來,並且是客戶端和**伺服器都能快取,還能設定快取失效時間等

一些常見指令的作用

協商快取

last-modified 和 if-modified-since

last-modified表示本地檔案最後修改日期,if-modified-since會將last-modified的值傳送給伺服器,詢問伺服器在該日期後資源是否有更新,有更新的話就會將新的資源傳送回來,否則返回304狀態碼。

但是last-modified存在一些弊端:

etag 和 if-none-match

以上就是快取策略的所有內容了,看到這裡,不知道你是否存在這樣乙個疑問。如果什麼快取策略都沒設定,那麼瀏覽器會怎麼處理?

對於這種情況,瀏覽器會採用乙個啟發式的演算法,通常會取響應頭中的date減去last-modified值的 10% 作為快取時間。

前端瀏覽器快取策略

簡單記錄一下瀏覽器快取策略的理解 1,按瀏覽器快取位置來看分為四種 從上到下優先順序依次降低 1 service worker service worker 是執行在瀏覽器背後的獨立執行緒,一般可以用來實現快取功能。這是優先順序最高的快取,並且與其它三種不同,是可定製化的快取,而其它三種只能通過某些...

瀏覽器快取策略

1.三種區別在哪 from memory cache 字面理解是從記憶體中,其實也是字面的含義,這個資源是直接從記憶體中拿到的,不會請求伺服器一般已經載入過該資源且快取在了記憶體當中,當關閉該頁面時,此資源就被記憶體釋放掉了,再次重新開啟相同頁面時不會出現from memory cache的情況 f...

瀏覽器快取策略詳解

1 伺服器會存在大量重複請求 比如我們每次重新整理頁面的時候都會傳送一次請求到伺服器,而多次請求的引數和響應的內容都完全一致,其實這種請求完全就是多餘的,我們完全可以就用上一次的響應內容。2 提高響應的速度 對於重複的請求,我們將響應內容儲存到本地,下一次請求時可以直接返回而無需請求伺服器,那麼會提...