[Web数据控制]浏览器中cookie、localStorage和sessionStorage

前言

最近在跟随公司的前辈大哥们做一个全栈项目,让我负责前端页面数据的存取控制。想要做好网站的数据存取控制,就需要明白好客户端的浏览器各个域的作用机制。

区别

共享性

cookie和localStorage都是跟随同一个网址的存储空间。在同一个网址下,所有的标签页之间共享cookie和localStorage。

而sessionStorage是当前标签页下有效。同一个网站不同的标签页,sessionStorage一般是不共享的。只有同源窗口(协议、域名、端口一致,注意是这里说的是窗口,不是标签页和网址),不同页面可以共享sessionStorage的值。意思就是,如果我新的一页是通过 window.open 方法或者是通过链接打开时,新页面会复制前一个页面的sessionStorage。

保存时长

localStorage:永久有效,除非script代码清除或者删除浏览器缓存

sessionStorage:当前会话内有效,当窗口关闭时(刷新可以视为重启页面,也有关闭页面的行为)清除里面的数据。

cookie:由开发者编辑代码时设置,大多开发框架默认行为是设置成永久有效,同localStorage一样。也可以由开发者设置过期时长。

最后一个重要的差别是,cookie中的内容会跟随在每一个请求头中,而localStorage和sessionStorage不会。

相关推荐
huali20 分钟前
vue-split-screen:让 Vue Router 的导航轨迹变成两个页面
前端·javascript·vue.js
bug总结30 分钟前
uniapp总结
开发语言·前端·javascript
云运维笔记36 分钟前
华为VRP系统文件管理全攻略
前端·华为
走到天涯海角41 分钟前
pinia和Vuex的区别以及使用pinia
开发语言·前端·javascript
电梯界知识分子1 小时前
江西抚州临川九尊府五层别墅:受限楼梯间里,全黑铝合金观光井道配曳引龙门架的落地记录
大数据·前端·网络·算法·家用电梯
晴天161 小时前
Web 页面内存溢出与 CPU 溢出:区别、诊断与最佳实践
前端·javascript
摸鱼仙人~1 小时前
需求深度分析提示词-grill me
前端·chrome
Highcharts.js1 小时前
常见报错排雷指南3:兼容性问题的官方解法
前端·javascript·react.js·可视化·highcharts·报错解法
雪芽蓝域zzs2 小时前
第三十六节:keep-alive 页面缓存(Vue3 + 后台管理系统)
前端·vue.js·缓存
言乐62 小时前
Python加速器2视频网页加速器
前端·javascript·css·python·音视频