http快取策略

2022-08-29 20:33:22 字數 838 閱讀 4167

http快取主要由兩種:本地快取和快取協商。優先使用本地快取,本地快取不起作用時使用快取協商。http快取主要是頭部資訊header來決定的。

一:什麼是本地快取?

本地快取有頭部資訊的cache-control和expires來決定。

cache-control是個相對值常量,它有如下幾個值:

no-cache:表示不使用本地快取,使用快取協商

no-store:不快取,每次都從伺服器請求資料 

public:所有終端和中間的cdn都可以快取

private:只有終端瀏覽器可以快取

max-age:快取的資源儲存的最長時間,優先順序高於expires

本地快取的流程如下:

瀏覽器第一次請求,伺服器返回帶有cache-control或者expires,或者兩者都有的響應頭部資訊。瀏覽器第二次請求時,伺服器首先檢查本地快取的失效時間,如果沒有失效,直接使用本地快取,失效了使用快取協商。

二:快取協商

快取協商有頭部資訊的last-modified/if-modified-since 和 etag/if-no-match來決定。

1)last-modified/if-modified-since 

通過比對資源的修改時間來決定是否使用快取

流程如下:

瀏覽器第一次請求,伺服器返回帶有last-modified的響應頭部資訊。瀏覽器第二次請求時,向伺服器傳送if-modified-since的頭部資訊,伺服器比較修改時間,如果時間沒有改變,則使用快取。

2) etag/if-no-match

通過比較檔案的摘要資訊來判斷是否需要使用快取

流程類似於last-modified的流程。

HTTP 快取策略

瀏覽器一般快取 css js等靜態檔案,因為這些檔案的更新頻率相對來說比較低,合理利用瀏覽器的快取對 的效能提公升有很大幫助。http快取分為兩部分,分別是本地快取和快取協商,當本地快取不生效時會啟用快取協商。http快取主要由http協議的頭 header 資訊來制定。本地快取 本地快取是指瀏覽器...

HTTP快取策略

瀏覽器一般快取 css js等靜態檔案,因為這些檔案的更新頻率相對來說比較低,合理利用瀏覽器的快取對 的效能提公升有很大幫助。http快取分為兩部分,分別是本地快取和快取協商,當本地快取不生效時會啟用快取協商。http快取主要由http協議的頭 header 資訊來制定。本地快取是指當瀏覽器請求資源...

HTTP 快取策略

前端開發的同學大家都知道,專案中的靜態檔案等資訊,都要做快取處理,這裡,我們就來說一下http的快取策略。快取,顧名思義,其實就把是拿到的資源存起來,下次要用的時候就可以直接使用啦。有什麼作用呢?重用已獲取的資源能夠有效的提公升 與應用的效能。快取其實是乙個很廣義的概念,用到的地方很多,當然作用只有...