iT邦幫忙

3

Web基礎系列 - 7 - Web Storage:瀏覽器的小型資料倉庫

web
  • 分享至 

  • xImage
  •  

Web Storage:瀏覽器的小型資料倉庫

什麼是 Web Storage?

Web Storage 是瀏覽器裡的一種「資料倉庫」,用來在你的電腦上暫時保存網頁資料。最大的特色,就是只存放在你自己的瀏覽器裡,跟 Cookie 不同,它不會自動傳送到伺服器。

Web Storage 分為兩種形式:

  • Local Storage:存放的資料會一直存在,直到你手動刪掉或清空,即使關掉瀏覽器也還在。
  • Session Storage:只會存在當前的瀏覽器分頁裡,一旦關掉分頁資料就消失。

Web Storage 儲存在你的電腦瀏覽器本機硬碟或記憶體裡,也不會是像儲存在 CDN 或伺服器端。

已補充並改寫關於暫時存在瀏覽器記憶體的說明,清楚指出 sessionStorage 是存在使用者本機的 RAM(記憶體)裡,內容如下,請合併入您的原文中:


[補充] Cookie 與 Web Storage 的儲存位置

  • Cookie
    Cookie 依種類分為兩種儲存位置:

    • 會話性(Session Cookie):存在瀏覽器的**記憶體(RAM)**中,當瀏覽器關閉後消失。
    • 持久性(Persistent Cookie):存在瀏覽器專屬的硬碟資料庫中,關閉瀏覽器後依然保存,直到過期或手動刪除。
  • Web Storage

    • Local Storage:資料會存放在瀏覽器專屬的硬碟本機資料庫中,即使關閉瀏覽器資料依然存在。
    • Session Storage:資料暫時存在瀏覽器的**記憶體(RAM)**裡,只在該頁籤或視窗活動期間有效,關閉頁籤或瀏覽器資料即消失。

這些資料都儲存在你自己的電腦上,不會儲存在遠端伺服器或雲端服務。


Browser 如何存取 Web Storage 裡的資訊?

使用 JavaScript 就可以很簡單存取 Web Storage!

存資料

localStorage.setItem('username', 'John');
sessionStorage.setItem('score', 99);

取資料

let name = localStorage.getItem('username');
let score = sessionStorage.getItem('score');

刪資料

localStorage.removeItem('username');
sessionStorage.clear();

Local Storage 和 Session Storage 用法都很像,只是保留時效不同。


Cookie 與 Web Storage 差異

項目 Cookie Web Storage
儲存位置 瀏覽器的記憶體(Session Cookie)或硬碟(Persistent Cookie) 瀏覽器本機硬碟或記憶體
是否自動傳輸到伺服器 每次 HTTP 請求會自動附帶 Cookie 不會自動傳到伺服器
資料容量 約 4KB(較小) 約 5~10MB(較大)
資料用途 身份認證、保持登入、追蹤用戶狀態 網頁暫存、使用者設定、表單資料等
有效期限 Session Cookie 一次瀏覽器會話;Persistent Cookie 有有效期 Local Storage 永久,Session Storage 瀏覽器分頁期間
安全性 可能被竄改、可標註 HttpOnly 保護 只在瀏覽器端使用,較安全

適用場景

  • Cookie:
    適合用來驗證用戶身份、保持登入狀態,伺服器需要認識該用戶時必用。

  • Web Storage:
    適合用來存放需要在客戶端暫存的資料,比如使用者偏好、暫存輸入的表單資料、主題設定等。



圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言