午夜视频在线观看区二区-午夜视频在线观看视频-午夜视频在线观看视频在线观看-午夜视频在线观看完整高清在线-午夜视频在线观看网站-午夜视频在线观看亚洲天堂

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

【W(wǎng)EB開發(fā)】Cookie、Session、Local Storage 和 Session Storage 詳解

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

一、基本概念與工作機(jī)制

  1. Cookie

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

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

      服務(wù)器通過響應(yīng)頭 Set-Cookie 設(shè)置客戶端存儲(chǔ)的鍵值對(duì)。
      客戶端每次請(qǐng)求自動(dòng)攜帶同源 Cookie,實(shí)現(xiàn)狀態(tài)保持(如登錄憑證)。
    • 特性:

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

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

      服務(wù)器端存儲(chǔ)的用戶會(huì)話數(shù)據(jù),通過 Session ID(通常存于 Cookie)標(biāo)識(shí)客戶端身份。
    • 工作機(jī)制:

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

      數(shù)據(jù)存儲(chǔ)在服務(wù)器內(nèi)存或數(shù)據(jù)庫中,安全性較高。
      默認(rèn)會(huì)話級(jí)有效期,支持手動(dòng)設(shè)置超時(shí)時(shí)間。
  3. Local Storage

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

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

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

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

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

      會(huì)話級(jí)客戶端存儲(chǔ),數(shù)據(jù)僅在當(dāng)前標(biāo)簽頁有效,關(guān)閉后自動(dòng)清除。
    • 工作機(jī)制:

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

?二、優(yōu)缺點(diǎn)對(duì)比

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



三、應(yīng)用案例分析

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

    • 場(chǎng)景

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

  2. Session 應(yīng)用:購物車功能

    • 場(chǎng)景

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

  3. Local Storage 應(yīng)用:主題偏好持久化

    • 場(chǎng)景

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

  4. Session Storage 應(yīng)用:表單草稿暫存

    • 場(chǎng)景

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


四、安全與最佳實(shí)踐

  1. Cookie

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

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

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

五、總結(jié)

  • Cookie

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

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

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

    臨時(shí)存儲(chǔ)會(huì)話級(jí)數(shù)據(jù)(如表單草稿),標(biāo)簽頁隔離更安全。

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


閱讀原文:原文鏈接


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

主站蜘蛛池模板: 国产交换配乱婬 | 国产精品色综合久久 | 国产精品麻豆入口92 | 丰满人妻被公侵犯中文电影版 | 91在线无码精品秘入口九色 | 国产成人精品.一二 | 国产高清无码在线观看 | 国产一级精品无码 | 国产按摩推油一区二区 | 国产猛烈高潮尖叫视频免费 | 国产美女被艹在线 | 国产精品女同久 | 高清女同学巨大乳在线 | 国产毛片女人18水多 | 国产午夜无码视频免费网站 | 国产盗摄精品一区 | 成人午夜免费福利视频 | 国产精品国产高清国产av | 国产偷窥女洗浴在线观看潜入 | 国产成人午夜福利高清在线观看 | av片免费大全在线观看不卡 | 国产精品高潮av有码久久 | 国产精品无码久久sm | 1024手机看片你懂的免费 | 国产午夜福利精品一区二区三区 | 2025国产在线视频 | 精品亚洲国产成av人片传媒 | 91麻豆va国产精品久久久久久 | 国产在线一区二区三区免费大片 | 成人黄页网站免费观看大全 | 国产精品免费观看在线观看 | 国产精品一级二级三级 | 国产美女爽到喷出水来视频 | 国产精品午夜福利不卡 | 国产系列欧美系列日韩系列在线 | 国产精品白浆无码流出视频 | 国产av一区二区三区最新精品 | 国产va在线播放频 | 高潮精品呻吟久久无码 | 91伊人久久 | 精品无码av不卡一区二区三区 |