cookie、sessionStorage、localStorage的區別?

Du9191發表於2022-05-02
  • 資料儲存位置

三者都是儲存在遊覽器本地的

區別在於cookie是伺服器端寫入的,而sessionStorage、localStorage是由前端寫入的

  • 生命週期

cookie的生命週期是由伺服器端寫入的時候就設定好的

而localStorage一直存在除非手動清除

sessionStorage是在頁面關閉後自動清除

  • 儲存大小

cookie的儲存空間大概4KB,sessionStorage和localStorage大概5M

  • 資料共享

cookie、sessionStorage、localStorage資料共享都遵循同源原則(協議、域名、埠號),sessionStorage還限制必須在同一個頁面

  • 傳送請求是否攜帶資訊

前端在給後端傳送資料的時候會自動攜帶上cookie的資料,而sessionStorage和localStorage不會

  • 應用場景

cookie一般用於儲存登入驗證資訊sessionID和token

sessionStorage可以用來檢測使用者是否通過重新整理進入頁面,如音樂播放器恢復播放進度條

localStorage常用於儲存不易變動的資料,一定程度上緩解伺服器壓力

相關文章