国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網站管理員

【WEB開發(fā)】Cookie、Session、Local Storage 和 Session Storage 詳解

admin
2025年4月8日 9:44 本文熱度 379

一、基本概念與工作機制

  1. Cookie

    • 可設置過期時間(持久化)或會話級別(關閉瀏覽器失效)。
    • 支持安全屬性(HttpOnlySecureSameSite)防范 XSS 和 CSRF 攻擊。
    • 服務器通過響應頭 Set-Cookie 設置客戶端存儲的鍵值對。
    • 客戶端每次請求自動攜帶同源 Cookie,實現(xiàn)狀態(tài)保持(如登錄憑證)。
    • 定義

      由服務器生成并發(fā)送到客戶端的小型文本數(shù)據(jù)(通常不超過4KB),用于跟蹤用戶狀態(tài)。
    • 工作機制:

      服務器通過響應頭 Set-Cookie 設置客戶端存儲的鍵值對。
      客戶端每次請求自動攜帶同源 Cookie,實現(xiàn)狀態(tài)保持(如登錄憑證)。
    • 特性:

      可設置過期時間(持久化)或會話級別(關閉瀏覽器失效)。
      支持安全屬性(HttpOnlySecureSameSite)防范 XSS 和 CSRF 攻擊。
  2. Session

    • 數(shù)據(jù)存儲在服務器內存或數(shù)據(jù)庫中,安全性較高。
    • 默認會話級有效期,支持手動設置超時時間。
    • 首次請求時服務器創(chuàng)建 Session 并返回 Session ID,后續(xù)請求通過該 ID 關聯(lián)數(shù)據(jù)。
    • 若客戶端禁用 Cookie,需通過 URL 重寫傳遞 Session ID。
    • 定義

      服務器端存儲的用戶會話數(shù)據(jù),通過 Session ID(通常存于 Cookie)標識客戶端身份。
    • 工作機制:

      首次請求時服務器創(chuàng)建 Session 并返回 Session ID,后續(xù)請求通過該 ID 關聯(lián)數(shù)據(jù)。
      若客戶端禁用 Cookie,需通過 URL 重寫傳遞 Session ID。
    • 特性:

      數(shù)據(jù)存儲在服務器內存或數(shù)據(jù)庫中,安全性較高。
      默認會話級有效期,支持手動設置超時時間。
  3. Local Storage

    • 通過 localStorage.setItem(key, value) 存儲字符串類型數(shù)據(jù)。
    • 同源窗口共享數(shù)據(jù),容量約5MB。
    • 定義

      HTML5 提供的客戶端持久化存儲,數(shù)據(jù)永久保存(需手動刪除)。
    • 工作機制:

      通過 localStorage.setItem(key, value) 存儲字符串類型數(shù)據(jù)。
      同源窗口共享數(shù)據(jù),容量約5MB。
    • 典型應用

      長期保存用戶主題偏好、緩存靜態(tài)資源。
  4. Session Storage

    • 與 Local Storage API 相同,但作用域限定為單個標簽頁。
    • 適用于臨時數(shù)據(jù)存儲(如表單草稿、多步驟流程狀態(tài))。
    • 定義

      會話級客戶端存儲,數(shù)據(jù)僅在當前標簽頁有效,關閉后自動清除。
    • 工作機制:

      與 Local Storage API 相同,但作用域限定為單個標簽頁。
      適用于臨時數(shù)據(jù)存儲(如表單草稿、多步驟流程狀態(tài))。

?二、優(yōu)缺點對比

特性CookieSessionLocal StorageSession Storage
存儲位置
客戶端
服務器端
客戶端
客戶端
生命周期
可自定義過期時間
會話或自定義超時
永久存儲(手動刪除)
會話級(標簽頁關閉清除)
容量限制
4KB/域名
無限制(受服務器內存限制)
約5MB
約5MB
安全性
較低(易受 XSS/CSRF 攻擊)
較高(數(shù)據(jù)在服務端)
中(依賴同源策略)
中(同 Local Storage)
數(shù)據(jù)傳輸
每次請求自動攜帶
僅傳遞 Session ID
不參與 HTTP 請求
不參與 HTTP 請求



三、應用案例分析

  1. Cookie 應用:用戶登錄狀態(tài)

    • 場景

      用戶登錄后,服務器返回包含身份令牌的 Cookie,后續(xù)請求自動攜帶實現(xiàn)免密驗證。
    • 代碼示例:
      javascript // 服務端設置 Cookie(Node.js) res.setHeader('Set-Cookie', 'token=abc123; HttpOnly; Max-Age=3600');

  2. Session 應用:購物車功能

    • 場景

      用戶添加商品至購物車,服務器通過 Session 存儲商品列表。
    • 代碼示例:
      java // Java Servlet 中操作 Session HttpSession session = request.getSession(); session.setAttribute("cart", productList);

  3. Local Storage 應用:主題偏好持久化

    • 場景

      用戶選擇深色主題后,前端保存至 Local Storage,下次加載自動應用。
    • 代碼示例:
      javascript // 保存主題 localStorage.setItem('theme', 'dark'); // 讀取主題 const theme = localStorage.getItem('theme') || 'light'; document.body.className = theme;

  4. Session Storage 應用:表單草稿暫存

    • 場景

      用戶填寫多步驟表單時,實時保存草稿至 Session Storage,防止意外關閉丟失數(shù)據(jù)。
    • 代碼示例:
      javascript // 監(jiān)聽輸入并保存 form.addEventListener('input', () => { const data = JSON.stringify(formData); sessionStorage.setItem('draft', data); });


四、安全與最佳實踐

  1. Cookie

    • 敏感數(shù)據(jù)(如 Token)應設置 HttpOnly 和 Secure 屬性。
    • 使用 SameSite=Strict 防范 CSRF 攻擊。
  2. Session

    • 避免存儲過大對象,防止服務器內存壓力。
    • 分布式系統(tǒng)中需使用集中式 Session 存儲(如 Redis)。
  3. Web Storage

    • 避免存儲敏感信息(如密碼),需加密處理。
    • 監(jiān)聽 storage 事件實現(xiàn)跨標簽頁同步(僅 Local Storage)。

五、總結

  • Cookie

    適用于需與服務器交互的小型數(shù)據(jù)(如身份驗證),但需注意安全性。
  • Session

    適合存儲敏感或臨時會話數(shù)據(jù)(如購物車),依賴服務器資源。
  • Local Storage

    長期存儲非敏感數(shù)據(jù)(如用戶偏好),容量大且易用。
  • Session Storage

    臨時存儲會話級數(shù)據(jù)(如表單草稿),標簽頁隔離更安全。

根據(jù)具體場景選擇合適的存儲方案,結合安全策略和性能要求,可顯著提升用戶體驗和系統(tǒng)可靠性。


閱讀原文:原文鏈接


該文章在 2025/4/8 15:02:06 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品日韩高清秒播日韩国产欧美 | 无套中出丰满人妻无码 | 香港三级日本三级少妇三级 | 男男全肉高h湿视频在线 | 欧美伦无码电影大开眼戒 | 亚洲国产av无码综合原创国产 | 中文字幕一区二区人妻 | 综合图区亚洲偷自拍 | 麻豆精品国产福利在线观看 | 丝袜自慰一区二区三区 | 无码中文欧美一区二区三 | 国产无遮挡裸体免费视频A片软件 | 国产精品久久久久一区二区三区共 | 五月激情丁香婷婷综合中文字幕 | 国产成人综合色在线观看网 | 精品香蕉一区二区三区 | 久久水蜜桃亚洲av无码精品麻豆 | 午夜国产情侣拍视频 | 内射一区二区精品视 | 亚洲成av人影院 | 国产精品成人网站 | 亚洲精品成人网线在线播放va | 2025精品综合久久久久 | 98久久无码一区人妻A片蜜 | 日韩精品福利片午夜免费观着 | 日韩一卡2卡3卡4卡乱码网站导航 | 思思久久好好热精品国产 | 欧美日韩精品免费一区二区三区 | 中文国产精品制服丝袜日韩 | 精品人妻无码一区二区三区蜜桃一 | 亚洲成人日韩六十熟妇乱子伦视频 | 国产精品欧美亚洲制服 | 国产婷婷午夜精品无码A片 国产婷婷午夜无码A片 | 娇妻的呻吟梦颖完整版 | 无码人妻一区二区三区精品视频 | 中文字幕人妻日韩在线 | 亚洲a成人无码一二三区 | 国产成人精品日本亚洲第一区 | 亚洲成a人片777777 | 久久永久免费人妻精品 | 欧美日韩国产传媒免费看 |