特性/儲存方式 | Cookie | Local Storage | Session Storage |
---|---|---|---|
定義 | 伺服器儲存在瀏覽器的 小型資料片段 |
瀏覽器中的 Web Storage API 的一部分 | 瀏覽器中的 Web Storage API 的一部分 |
大小限制 | 約 4KB | 約 5~10 MB | 約 5~10 MB |
壽命 | 可設定過期時間 | 永久儲存 除非手動刪除 |
瀏覽器會話結束時消失 |
安全性 | 可設定 Secure 和 HttpOnly 旗標 |
相對較低 | 相對較低 |
跨域 | 僅對建立該 Cookie 的域名有效 |
僅在相同的域名下可用 | 僅在相同的域名下可用 |
每次請求附帶 | 是 | 否 | 否 |
主要用途 | 會話管理、使用者追蹤 | 儲存大量資料、使用者偏好 | 單次瀏覽會話的資料儲存 |
特性/技術 | JWT | Cookie | 後端 Session |
---|---|---|---|
優點 | 無狀態、跨域、靈活性、前後端分離 | 簡單、廣泛支持、伺服器端控制 | 安全性高、易於撤銷和管理 |
缺點 | 需要安全儲存、不易撤銷、較大大小 | 大小限制、跨域問題 | 擴展性差、負載平衡需特別處理 |
主要適用場景 | 跨域、前後端分離、狀態無關的設計 | 單一系統、需要高安全性 | 單一系統、需要高安全性和狀態管理 |
網路應用程式介面的設計風格,它遵循 REST(Representational State Transfer
,具象狀態傳輸)原則:這是一種軟體架構風格,用於設計網路應用程式的互動方式,建構網路應用的設計原則和約束條件
按需求提供程式碼 Code on Demand
GET
:讀取資源 (READ, R)POST
:創建新資源(CREATE, C)PUT
:更新現有資源 (UPDATE, U)DELETE
:刪除資源 (DELETE, D)