談談瀏覽器http快取

2022-07-25 09:51:16 字數 823 閱讀 2088

最近面試,被問到了http的相關知識,深知自己的不足,於是惡補了一下。

user-agent

pragma

cache-control

referer

accept

cookit

if-modified-since

if-none-match

content-type

date

etag

last-modefied

agecache-control

access-control-allow-origin

如果配置了etag,在第一次請求的時候,響應頭會下發etag屬性,再下一次請求,會帶上if-none-match,如果服務端沒有匹配的etag,返回200和新的etag。如果有匹配的etag,返回304請求。

強快取和協商快取

新鮮度和有效性

強快取用cache-control、expires、pragma來控制,如果在有效期內不會發任何請求到伺服器

協商快取用etag、last-modified、if-none-match、if-modified-since來控制,特點是會發乙個請求來確認快取是否有效,如果有效就返回304,省去傳輸內容的時間。

如果瀏覽器發起乙個請求,發現本地的資源已經過期,則會附加乙個if-none-match

注意,按f5重新整理瀏覽器,會忽略cache-control和expires

如果同時設定了cache-control和expires,expires會忽略。

注意,強快取有效的前提下,不會傳送請求到伺服器,也就是說,不會有協商快取什麼事情。

參考:

http快取 瀏覽器快取

如果以下題目都能快速回答,那此文章也就沒有必要要看啦 1.講一下http快取 強快取,協商快取 2.如何控制強 協商快取 expires,cache control,etag if none match,if modified sine last modified 3.cache control有哪...

瀏覽器http快取

強快取 強快取命中不會傳送請求到伺服器端,直接從本地快取中獲取資源,狀態碼200 from cache 協商快取 協商快取會傳送請求到伺服器,伺服器通過請求頭部欄位來驗證資源是否命中協商快取,如果命中,則返回狀態碼304 not modified 通知瀏覽器從快取中獲取資源 4.1 last mod...

HTTP瀏覽器快取機制

來自 瀏覽器快取機制 瀏覽器快取機制,其實主要就是http協議定義的快取機制 如 expires cache control等 但是也有非http協議定義的快取機制,如使用html meta 標籤,web開發者可以在html頁面的節點中加入標籤,如下 上述 的作用是告訴瀏覽器當前頁面不被快取,每次訪...