1. 程式人生 > >Cookie與sessionstorage和localstorage的區別

Cookie與sessionstorage和localstorage的區別

   應用場景的區別

    cookie用於記錄使用者登入狀態,從而實現免登入功能.

    sessionStorage和localStorage的作用主要是瀏覽器本地儲存,它們的用法主要有兩

  • (1)例如京東:在使用者不登入的情況下,可以將商品放到購物車(儲存到本地)
  • (2)例如百度腦圖:在使用者斷網的情況下,可以將使用者的操作資料儲存到本地,等使用者連上網就上傳到伺服器
    • 這種方式稱之為離線快取:只有使用者離線才會儲存到本地,如果線上則不儲存,並且本地資料一旦成功儲存到伺服器之後就會刪除

(1),資料傳遞角度

cookie在瀏覽器和伺服器來回傳遞

sessionStorage和localStorage不會自動把資料傳送給伺服器,僅在瀏覽器本地儲存.

(2)大小限制的區別

cookie資料不能超過4k,sessionStorage和localStorage可以達到5M或者更多.

(3)有效期

cookie的有效期伺服器會驗證,如果過期伺服器不識別,認為是無效cookie.

sessionStorage和localStorage沒有有效期概念,它們只儲存在本地.

(4)作用域區別

localStorage:又稱為本地儲存,始終有效,視窗或瀏覽器關閉也一直儲存,因此用作持久資料

sessionStorage:又稱為會話儲存,僅在當前瀏覽器視窗關閉前有效,自然也就不可能持久保持

cookie只在設定的cookie過期時間之前一直有效,即使視窗或瀏覽器關閉,它的作用域是由伺服器設定的有效期決定的.