當前位置:成語大全網 - 書法字典 - 前端http請求詳細信息-緩存-控制(緩存機制)

前端http請求詳細信息-緩存-控制(緩存機制)

請求和響應中的緩存控制指令不完全相同。詳情請查看此處,包括說明的具體含義,我在此不再贅述。(默認值:私有)

瀏覽器的緩存機制基於HTTP消息的緩存標識符。當瀏覽器在第壹次向服務器發出請求後獲得請求結果時,它將根據響應消息中HTTP頭的緩存標識符來決定是否緩存結果。

瀏覽器緩存策略分為兩種:強制緩存和協商緩存。

強制緩存不向服務器發送請求,而是直接從緩存中讀取資源。可以看到請求返回的狀態碼是200,大小表示緩存的位置。

瀏覽器讀取緩存的順序是內存-& gt;磁盤。

三級緩存原則(訪問緩存優先級):

在瀏覽器中,瀏覽器將js、字體、圖片等文件解析後直接存儲到內存緩存中,因此在刷新頁面時,只需要直接從內存緩存中讀取即可;css文件將存儲在硬盤文件中,因此每次渲染頁面時,都需要從硬盤中讀取緩存。

為什麽CSS在硬盤緩存中?

因為CSS文件壹旦加載就可以呈現,所以我們不經常讀取它,所以它不適合緩存在內存中,但js等腳本可能會隨時執行。如果腳本在磁盤中,我們需要在執行它們時將它們從磁盤提取到內存中,因此IO開銷非常高,這可能會導致瀏覽器失去響應。

如果上次修改了服務器的資源》:If-Modified-Since的字段值

然後再次返回狀態代碼為200的資源;否則,它返回到304,這意味著資源不更新,緩存的文件可以繼續使用。

If-None-Match的字段值=服務器上資源的Etag值。

如果壹致,則返回304,這意味著不更新資源,繼續使用緩存文件;如果不壹致,將再次返回狀態代碼為200的資源文件。

ETag和上次修改時間之間的差異

參考鏈接:

blogs.com/suihang/p/12855345.html

/p/54cc04190252