瀏覽機制 快取

2021-09-05 11:13:14 字數 1164 閱讀 6419

相同點:都儲存在瀏覽器端,都是同源的

不同點:

cookie資料始終在同源的http請求中攜帶(即使不需要),即cookie在瀏覽器和伺服器間來回傳遞;cookie資料還有路徑(path)的概念,可以限制cookie只屬於某個路徑下。儲存大小限制也不同,cookie資料不能超過4k,同時因為每次http請求都會攜帶  cookie,所以cookie只適合儲存很小的資料,如會話標識。

而sessionstorage和localstorage不會自動把資料發給伺服器,僅在本地儲存。sessionstorage和localstorage 雖然也有儲存大小的限制,但比cookie大得多,可以達到5m或更大。

cookie需要設定過期時間,才能失效

sessionstorage需要關閉當前瀏覽器,才能失效

localstorage永久儲存在瀏覽器中

sessionstorage不在不同的瀏覽器視窗中共享,

cookie和localstorage在同源的視窗都是共享的

cookie掛載document下

sessionstorage和localstorage在window下

1.建立cookie

1).document.cookie屬性設定字串:name = value

2). 資料進行編碼和解碼

/使用encodeuricomponent()進行編碼

/使用decodeuricomponent()進行解碼

/cookie值不能含有分號,逗號和空白符

2.cookie的可選引數

將expires設定為過期的時間可以刪除cookie

2).path:

指定了與cookie關聯在一起的網頁,如果把path設定為"/",那麼它對該**的所有網頁可見

3).domain

設定cookie的有效網域名稱,一般使用預設值,當前繫結的網域名稱,本地測試無效

4).secure

指定網路上如何傳輸cookie,預設為普通http協議傳輸;若設定為安全的,只能通過https安全協議才能傳輸

setitem()新增資料,getitem()獲取資料,也可以直接在localstorage()或sessionstorage()中使用傳值

removeitem()刪除資料,clear()清空資料

瀏覽器快取機制

最近在準備優化日誌請求時遇到了一些令人疑惑的問題,比如為什麼響應頭里出現了兩個 cache control 為什麼明明設定了 no cache 卻還是發請求,為什麼多次訪問時有時請求裡帶了 etag,有時又沒有帶?等等。後來查了一些資料以及同事親自驗證,總算對這些問題有了個清晰的理解,現在整理出來以...

瀏覽器快取機制

當我們瀏覽乙個頁面發現有異常時,通常考慮的就是書不是瀏覽器做了快取呢,按ctrl f5重新請求一次就能請求到沒有快取的頁面,這個是為什麼呢。首先,ctrl f5組合鍵重新整理頁面,那麼瀏覽器會直接向目標url傳送請求,而不再使用瀏覽器快取的資料。其次,當請求到達伺服器端依然有可能出現使用伺服器端的資...

瀏覽器快取機制

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