Cookie、LocalStorage与SessionStorage的区别解析

前端本地存储cookie、localstorage和sessionStorage之间的区别? cookie的使用 cookie可以设置key,value,domain,expires var name = 'one_name'; var value = '123'; var exp = new Date(); exp.setTime(exp.getTime() + 60 * 2000);//过期时间 2分钟 document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString(); ... 阅读详情

Cookies、SessionStorage 和 LocalStorage 都是浏览器提供的客户端存储机制,用于在用户的本地存储数据。它们的主要区别体现在数据生命周期、作用域、存储容量、与服务器的交互方式以及用途上。下面是它们的详细对比:

特性CookiesLocalStorageSessionStorage
生命周期可设置过期时间:若不设置过期时间(Expires 或 Max-Age),则是会话级(浏览器关闭即清除);设置了则到期才清除。可以手动删除。永久存储:数据永久存储在浏览器中,除非用户手动清除(删除浏览器数据),或通过 JavaScript 删除。会话级存储:数据仅在当前浏览器标签页/窗口打开期间有效。关闭标签页/窗口即清除。刷新页面不会清除。
作用域同源 + 路径限制:可设置 Domain 和 Path 来控制哪些域名和路径下的页面可以访问该 Cookie。默认是当前域名及其子域名下的当前路径。同源策略:同一协议、域名、端口下的页面均可访问。同源策略 + 标签页/窗口隔离:同一协议、域名、端口下的页面,且必须在同一个标签页/窗口中才能访问。不同标签页/窗口(即使是同一页面)的 SessionStorage 互不影响。
存储容量很小:通常每个域名下限制为 ~4KB。较大:通常为 5MB ~ 10MB(不同浏览器可能有差异)。较大:通常为 5MB ~ 10MB(不同浏览器可能有差异)。
与服务器交互自动携带:每次 HTTP 请求(HTML、图片、JS、CSS、API 等)都会自动附带在请求头(Cookie 头)中发送到对应的服务器。这会影响带宽(尤其是小文件请求)。纯客户端:数据不会自动发送给服务器。仅在客户端 JavaScript 中读写。纯客户端:数据不会自动发送给服务器。仅在客户端 JavaScript 中读写。
数据类型字符串键值对:只能存储字符串。复杂对象需序列化(如 JSON.stringify)。字符串键值对:只能存储字符串。复杂对象需序列化。字符串键值对:只能存储字符串。复杂对象需序列化。
API 易用性操作相对复杂,需通过 document.cookie 字符串操作(原生API不友好,常用库封装)。简单易用:提供 setItem(key, value), getItem(key), removeItem(key), clear() 等直观方法。简单易用:与 LocalStorage API 完全相同(setItem, getItem, removeItem, clear)。
事件监听❌ 不支持原生事件监听。⭕ 支持 storage 事件:监听同源下其他标签页的 LocalStorage 变化。⭕ 支持 storage 事件:监听同源下同一标签页内不同 iframe 的 SessionStorage 变化(不同标签页间不共享)。
主要用途1. 会话状态管理(如登录 Token、Session ID)
2. 个性化设置(如主题偏好、语言设置)
3. 用户行为跟踪(广告、分析)
(因其自动发送到服务器)
1. 长期本地数据(如离线数据缓存、用户偏好设置、购物车数据(非结算关键))
2. 需要持久化且不敏感的数据
1. 临时会话数据(如单页应用的页面状态、表单填写中途暂存、当前工作区数据)
2. 只在一个标签页内需要的数据

关键区别总结:

  1. 生命周期 & 作用域:

    • Cookies:可设置过期时间,作用域受域名/路径限制。
    • LocalStorage:永久存储,同源页面共享。
    • SessionStorage:标签页级存储,标签页关闭清除,同源页面仅在同一个标签页/窗口内共享。
  2. 服务器交互:

    • Cookies:每次请求自动发送到服务器(有安全/带宽考量)。
    • LocalStorage/SessionStorage:数据只存在客户端,不自动发送(性能更优)。
  3. 存储容量:

    • Cookies:非常小(~4KB)。
    • LocalStorage/SessionStorage:大得多(~5-10MB)。
  4. API & 易用性:

    • Cookies:原生 API 操作繁琐。
    • LocalStorage/SessionStorage:提供简单易用的键值对 API。

如何选择?

  • 需要服务器知道的信息(如身份认证令牌)? → Cookies (通常设置 HttpOnly, Secure 增强安全)。
  • 需要在用户下次访问时保留的较大本地数据(如用户主题、本地缓存)? → LocalStorage。
  • 仅在当前标签页会话期间需要的临时数据(如未提交的表单数据、页面跳转状态)? → SessionStorage。
  • 需要跨标签页同步数据? → LocalStorage (配合 storage 事件) 或 BroadcastChannelAPI / 状态管理库。
  • 存储少量且每次请求需发送的信息? → Cookies (但需注意性能和大小限制)。

安全提示:

  • 避免在 Cookies、LocalStorage 或 SessionStorage 中存储敏感信息(如密码、信用卡号)。即使设置了 HttpOnly Cookies 也不是绝对安全。
  • 对存储在 LocalStorage/SessionStorage 中的数据,如果来源不可信,使用前需进行校验和清理,以防 XSS 攻击读取或篡改。
EtherCAT主站SOEM -- 15 -- CIA402伺服驱动器子协议 以上就是EtherCAT主站SOEM – 15 – CIA402伺服驱动器子协议的内容。有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。创作不容,如果文档对您有帮助,记得给个赞。 阅读详情

相关推荐

C++笔试题整理

目录 1. 笔试题1 1.1 链表反转 1.2 String 2. 笔试题2 2.1 求下面函数的返回值(微软) 2.2 什么是“引用”?申明和使用“引用”要注意哪些问题? 2.3 将“引用”作为函数参数有哪些特点? 2.4 在什么时候需要使用“常引用”?  2.5 将“引用”作为函数返回值类型的格式、好处和需要遵守的规则? 2.6 “引用”与多态的关系? 2.7 “引用”与指针的区别是什么? 2.8 什么时候需要“引用”? 2.9 结构与联合有和区别? 2.10 下面关于.

星月相随的专栏 2483

cookie、localStorage和sessionStorage三者的区别

cookie、localstorage和sessionStorage三者都是在开发中用到的临时存储客户端会话信息或者数据的方法,下面就简单介绍一下三者的区别: 一、存储的时间有效期不同 1、cookie的有效期是可以设置的,默认的情况下是关闭浏览器后失效 2、sessionStorage的有效期是仅保持在当前页面,关闭当前会话页或者浏览器后就会失效 3、localStorage的有效期是在不进行手动删除的情况下是一直有效的 二、存储的大小不同 1、cookie的存储是4kb左右,存储量较小,一般

first_shun的博客 2万+

STM32-CubeMx-HAL库-串口空闲中断+DMA——利用HAL_UARTEx_ReceiveToIdle_DMA实现不定长数据接收

STM32-CubeMx-HAL库-串口空闲中断+DMA——利用HAL_UARTEx_ReceiveToIdle_DMA实现不定长数据接收

weixin_43864631的博客 1万+

cookies、localStorage 、sessionStorage 的区别

介绍:cookie,意思是小甜饼,顾名思义,cookie 确实非常小,它的大小限制为 4KB 左右;每个 HTTP 请求都会带着 Cookie 的信息,所以 Cookie 当然是能精 简就精简!常用的应用场景:判断用户是否登录。介绍:localStorage,它是 HTML5 标准中新加入的技术,localStorage 已经被大多数浏览器所支持; sessionStorage,它与 localStorage 的接口类似,但保存数据的生命周期与 localStorage 不同,它只是

weixin_47227886的博客 5570

【ROS】ROS局域网下多机通讯方法

最近工作中需要用到多机通讯,这里稍微总结一下使用方法。一、网络配置ifconfig这里举个例子,主机的IP地址为192.168.1.127,从机的IP地址为192.168.1.126;之后可测试一下能否互相ping通,成功后进行下一步。

weixin_43326110的博客 3360

指纹浏览器降维打击(下):Cloudflare Turnstile 与 hCaptcha 的底层交互逻辑

本文将深度拆解:Turnstile 与 hCaptcha 的 Iframe 沙箱通信机制,动态混淆 JS 与 PoW(工作量证明)的物理破解法则,以及如何通过 C++ 底层事件合成与环境基因强绑定,实现验证码的“无感过验”。

数据知道的博客 419

session、cookie、WebStorage(sessionStorage,localStorage)区别

cookie 天生就是最适合做认证,他们最大的区别是:每次 request 都会自动在 header 中带上所有的 cookie。 浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互。 一、cookie和session cookie和session都是用来跟踪浏览器用户身份的会话方式。 cookie机制 如果不在浏览器中设置过期时间,cookie被保存在内存中,生命周期随浏览器的关闭而结束,这种cookie简称会话cookie。如果在浏览器中

huhm_evget的博客 865

UG NX二次开发(C#)-建模-获取圆柱面信息(轴向、半径、深度)

获取圆柱面的信息前言一、在UG NX中面的类型有哪些?二、获取圆柱面信息的函数1.获取半径和轴向2、计算圆柱面的深度值3、测试用例总结 文章目录前言一、在UG NX中面的类型有哪些?二、获取圆柱面信息的函数1.获取半径和轴向2、计算圆柱面的深度值3、测试用例总结 前言 在一个项目中,需要遍历曲面,获得所有的圆柱面和圆柱面的信息,包括轴向、半径和圆柱面的深度。经过研究,采用uFModl.AskFaceData(face.Tag, out faceTypeInt, point, dir, box, out

GimiGimmy 4145

Cookie、LocalStorage和SessionStorage区别详解

Cookie、LocalStorage和SessionStorage区别详解 概念理解 Cookie它的主要用途有保存登录信息,比如你登录某个网站市场可以看到“记住密码”,这通常就是通过在 Cookie 中存入一段辨别用户身份的数据来实现的。 localStorage 是 HTML5 标准中新加入的技术,localStorage的生命周期是永久性的。假若使用localStorage存储数据,即使关闭浏览器,也不会让数据消失,除非主动的去删除数据。 sessionStorage 与 localStorage

yun_shuo的博客 1747

Sigrity Power DC Single-BoardPackage IR Drop Analysis模式进行单板压降仿真分析操作指导

如果需要单独对某个via设置参数,右侧选择Setup by padstack,下方下拉选择某个via,单独设置参数即可。举例:板厚1.6mm,内层1OZ(1.2mil,即0.03mm),铜皮宽度1mm,20度温升,允许通流I为2.5A。目的是模拟实际情况,via的孔壁电镀1mil,中间是空心的,让via不完全被填充金属成为实心via。Upper/lower Tolerance:上下公差,设置为5%,也就是压降允许的范围。电流密度计算公式:J=I/A(J为电流密度,I为电流,A为横截面积)

weixin_54787054的博客 695

微信小程序流量主提升ecpm的一些方法

ecpm就是千次广告曝光收入,是一个预估的价格,而不是额定的,他是随着曝光度,用户点击度,页面访问数来决定的。

任聪聪的博客 1万+

Cookie、Session、LocalStorage 和 SessionStorage 的区别详解

在前端开发中,数据存储和状态管理是非常重要的内容。常用的存储方式有 Cookie、Session、LocalStorage 和 SessionStorage。本文将详细介绍这四者的区别,帮助开发者更好地理解和选择合适的存储方案。Cookie 是由服务器生成并发送到客户端的一小段数据,客户端会将其存储并在后续请求中携带,帮助服务器识别用户。用户身份认证(如记住登录状态)存储用户偏好设置跟踪用户行为(如广告点击记录)// 设置 Cookiepath=/";// 读取 Cookie。

m0_65084430的博客 8481

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

cookie localStorage 与 sessionStorage的优缺点

cookie localStorage 与 sessionStorage的优缺点 cookie 缺点:cookie限制大小 ​ cookie会每次随http请求一起发送,浪费宽带。 localStorage 特点;可以长期储存数据;需要手动删除数据 ​ 在同一域下且同一个浏览器不同窗口页面,操作的是同一 个localStorage 优点:可以大量保存浏...

surprise_bao的博客 3228

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Cookie 、Session、localstorage、Sessionstorage的区别

一、一些概念理解 Cookie & Session(会话跟踪技术)、H4的存储机制; localstorage、Sessionstorage是Web Storage,H5的本地存储机制。是针对HTML4中 Cookie 存储机制的一个改善,由于Cookie存储机制有很多缺点,HTML5不再使用它,转而使用改良后的 Web Storage 存储机制。 WebStorage两个主要目标:(1)提供 cookie 之外存储会话数据的路径。(2)提供跨会话持久化存储大量数据的机制。 1. 会话(Sess

MARTIAN的博客 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

详解JavaScript中 Cookie、 LocalStorage 与 SessionStorage的api

基本概念 Cookie Cookie ,它的大小限制为4KB左右。它的主要用途有保存登录信息 localStorage localStorage 本地存储只要你不删用户不删一直都在 sessionStorage sessionStorage 与 localStorage 的接口类似,刷新页面数据依旧存在。但当页面关闭后,sessionStorage 中的数据就会被清空。所以叫做会话级别...

Army-海军的博客 1万+

localStorage、sessionStorage、cookie使用注意

一、localStorage,sessionStorage,cookie的简单介绍 localStorage:仅在客户端存储不参与服务器通信,存储大小一般为5M,如果不是人为清除,那么即使是关闭浏览器也会一直存在。 sessionStorage:仅在客户端存储不参与服务器通信,存储大小一般为5M,会话级存储,也就是说如果关闭当前页面或者浏览器那么就会清除 cookie:客户端存储,参与服务器通信,存储大小为4k,可设置生命周期,在设置的生命周期内有效 二、localStorage的优势及其注意点 在存储方面

csdn466412618的博客 441

前端数据的存储:cookie、sessionStorage、localStorage

前端数据的存储:cookie、sessionStorage、localStorage cookie:cookie是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript。可以由JavaScript对其进行控制,而并不是JavaScript本身的性质。cookie是存于用户硬盘的一个文件,这个文件通常对应于一个域名,当浏览器再次访问这个域名时,便使这个cooki...

qq_35315363的博客 894

浏览器本地存储详解、 cookie、sessionStorage、localStorage、IndexedDB

服务器端可以使用 Set-Cookie 的响应头部来配置 cookie 信息。一条cookie 包括了5个属性值 expires、domain、path、secure、HttpOnly。其中 expires 指定了 cookie 失效的时间,domain 是域名、path是路径,domain 和 path 一起限制了 cookie 能够被哪些 url 访问。secure 规定了 cookie 只能在确保安全的情况下传输,HttpOnly 规定了这个 cookie 只能被服务器访问,不能使用 js 脚本访问。

liangzhenmeng的博客 6万+

浏览器缓存Cookie,localStorage和sessionStorage

1、Cookie cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。支持所有现代浏览器。 var time=new Date("2019 10-01 12:00:00"); document.cookie="user=654321;expires=Tue ...

MRslonly的博客 385

本地存储之COOKIE、localStorage、sessionStorage

文章目录一.什么是COOKIE?1.1 COOKIE使用方式二.COOKIE 操作封装2.1设置 cookie2.2读取 cookie2.3删除 cookie三 localStorage四 sessionStorage 一.什么是COOKIE? 1.它是本地存储 2.必须在服务器下运行 3.会跟随服务器发送 4.过期时间:默认会话级 5.名字相同值会被覆盖 6.不允许跨浏览器使用 7.存储空间约等于 4K <script> var oDate = new Date() o

常蓬的博客 212

Cookie、session和localStorage、以及sessionStorage之间的区别

一、Cookie、session和localStorage的区别 cookie的内容主要包括:名字、值、过期时间、路径和域。路径与域一起构成cookie的作用范围。若不设置时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就会消失。这种生命期为浏览器会话期的cookie被称为会话cookie。 会话cookie一般不存储在硬盘而是保存在内存里,当然这个行为并不是...

WebDestiny的博客 677

前端本地存储——cookie,localStorage,sessionStorage

一,关于浏览器本地存储   为什么要有本地存储呢?举例:   1.在前后端进行数据交互时,服务器无法知道多个请求是否来自同一个浏览器,之前的解决办法是在请求中插入一些参数,这需要使用包含参数的隐藏的表单,或者作为URL参数的一部分传递。这两个     解决方案都需要手动操作,容易出错。     2.一般在登录系统中,用户登录一次以后,如果没有本地存储,下一次登录需要重新输入用...

weixin_30832351的博客 207

vuex存储和localstorage、sessionstorage、cookie的区别

sessionStorage   sessionStorage 方法针对一个 session 进行数据存储。当用户关闭浏览器窗口后,数据会被删除。 localStorage   localStorage 方法存储的数据没有时间限制。第二天、第二周或下一年之后,数据依然可用。 vuex   Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 总结 1.区别:vuex存储在内存,locals..

y1009666319的博客 1418

cookie,sessionStorage,localStorage分别是什么

三者之间的区别: cookie: 1.每个域名的存储量有限(一般是4k) 2.所有域名的存储量有限 3.会跟随请求被发送到服务器上 4.有个数限制,不同浏览器下,一个域名下cookie的个数有限,并且限制数量可能不一样 sessionStorage: 1.当浏览器窗口关闭的时候, sessionStorage 就会被销毁 2.存储容量大(一般比localStorage的存储容量大) lo...

tianhuiman的博客 178

Cookie和session和localStorage以及sessionStorage之间的区别

一、Cookie、session和localStorage的区别 cookie的内容主要包括:名字、值、过期时间、路径和域。路径与域一起构成cookie的作用范围。若不设置时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就会消失。这种生命期为浏览器会话期的cookie被称为会话cookie。 会话cookie一般不存储在硬盘而是保存在内存里,当然这个行为并不是规范规定的。若设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再打开浏览器这些cookie仍然有效直..

JackieDYH的博客 646
上一篇: CSS隐藏元素:display:none vs visibility:hidden
下一篇: Web实时通信技术大揭秘
代码的余温
博客等级 码龄2年 1149粉丝 207原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码的余温

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值