IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 客户端存储cookie sessionStorage localStorage -> 正文阅读

[系统运维]客户端存储cookie sessionStorage localStorage

客户端存储

cookie

会话存储

特定域绑定,设置cookie后,他会与请求一起发送到创建它的域

一些限制:每个域不超过20个cookie,浏览器不超过300个cookie,每个cookie不超过4096个字节……

构成:

1)名称:部分大小写

2)值:存在cookie中的字符串值,这个值必须经过URL编码

3)域:发送到这个域的请求都会带上cookie

4)路径:请求路径包含这个路径才会把cookie发送到服务器

5)过期时间:表示合适删除cookie的时间戳,默认情况下浏览器会话结束就会删除所有cookie,不过也可以自己设置 一个过期时间,这样即使关闭浏览器,时间到了cookie也会被删除

6)安全标志:只有使用功能SSL安全链接的情况下才会把cookie发送到服务器

Set-Cookie:name=value,expires=Mon,22-Jan-07 07:10:24 GMT;domains=.wrox.com;secure

cookie叫做name的cookie,Mon,22-Jan-07 07:10:24过期,.wrox.com及其他子域携带cookie,SSL连接才随请求发送到服务器

实际上发送给服务器的只有cookie的 名/值 对

document.cookie  // 获取页面中所有有效的cookie字符串

document.cookie=encodeURIComponent("name") + "=" + encodeURIComponent("Nicholas") + "; domain=.wrox.com;secure"  // 设置cookie

不要在cookie中存储重要或敏感信息

web Storage

只能存储字符串,所以非字符串需要转为字符串,最常用 JSON.stringify()

sessionStorage

跨会话存储机制

同源才能访问;同页面(window.open,this.$router.push改变的页面都还可以访问),但是如果重新输入一个地址打开的窗口就不能够访问了

数据只会存储到会话关闭,在页面关闭消失

不受页面刷新影响

只能由最初的存储数据页面使用,在多页面应用程序中应用有限

存储大小是由限制的

增删改查的api

// 获取
sessionStorage.getItem(key)
sessionStorage.key
// 添加设置、修改
sessionStorage.setItem(key,value)
sesisonStoreage.key=value
// 删除
sessionStorage.removeItem(key)
delete sessionStorage.key
sessionStorage.clear()

localStorage

永久存储机制

同源才能访问,不同窗口也可以访问跨,但是跨域和跨浏览器不能访问到

设置手动清除才清除

不受页面刷新影响

存储大小相对来说比较大

增删改查的api

// 获取
localStorage.getItem(key)
localStorage.key
// 添加设置、修改
localStorage.setItem(key,value)
localStorage.key=value
// 删除
localStorage.removeItem(key)
delete localStorage.key
localStorage.clear()

存储事件storage,每次使用setItem delete removeItem clear 都会触发这个事件

window.addEventListener("storage",e=>{
console.log("存储变化对应的域:", e.domain,"被设置或删除的值:",e.key,
"键被设置的新值 删除为null", e.newValue, 键变化之前的值 e.oldValue)
})

三者对比

不同点

cookie

1 存储数量据小
2 在设置的期限到达之前有效,及时关闭浏览器*
3 在同一浏览器的所有同源窗口共享 必须是同一浏览器(前提是同源),即使页面不同也可以拿到;在不同浏览器中即使同源,同一页面也不能共享cookie
4 cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递

sessionStorage
1 存储数据量较大
2 当前浏览器关闭之前有效
3 只在当前浏览器的当前会话共享 ,即使是同一浏览器,不同会话也不能共享cookie
4 sessionStorage不会自动把数据发送给服务器,仅在本地保存

localStorage
1 存储数据量大
2 除非自己删除,否则一直有效,即使浏览器关闭
3 在当前浏览器所有同源窗口共享*
4 localStorage不会自动把数据发送给服务器,仅在本地保存

相同点

1 都可以用来存储数据,且都保存在客户端(浏览器)
2 都必须是同源

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 16:28:46  更:2022-04-06 16:29:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:36:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码