localStorage、sessionStorage 和 Cookie 区别及用法
发布日期:2021-11-21 16:35:46
浏览次数:9
分类:技术文章
本文共 1179 字,大约阅读时间需要 3 分钟。
基本概念
cookie:主要用于保存登陆信息,比如登陆某个网站市场可以看到'记住密码’,这就是通过在cookie中存入一段辨别用户身份的数据来实现的。 sessionStorage:会话,是可以将一部分数据在当前会话中保存下来,刷新页面数据依旧存在。但是页面关闭后,sessionStorage中的数据就会被清空。 localStorage:是HTML5标准中新加入的技术,当然早在IE6时代就有一个userData的东西用于本地存储,而当时考虑到浏览器的兼容性,更通用的方案是使用flash。如今localStorage被大多数浏览器所支持。三者区别
1)存储大小 cookie:一般不超过4K(因为每次http请求都会携带cookie、所以cookie只适合保存很小的数据,如会话标识) sessionStorage:5M或者更大 localStorage:5M或者更大 2)数据有效期 cookie:一般由服务器生成,可以设置失效时间;若没有设置时间,关闭浏览器cookie失效,若设置了时间,cookie就会存放在硬盘里,过期才失效 sessionStorage:仅在当前浏览器窗口关闭之前有效,关闭页面或者浏览器会被清除 localStorage:永久有效,窗口或者浏览器关闭也会一直保存,除非手动永久清除,因此用作持久数据 3)作用域 cookie:在所有同源窗口中都是共享的 sessionStorage:在同一个浏览器窗口是共享的(不同浏览器、同一个页面也是不共享的) localStorage:在所有同源窗口中都是共享的 4)通信 ccokie:十种携带在同源的http请求中,即使不需要,故cookie在浏览器和服务器之间来回传递;如果使用cookie保存过多数据会造成性能问题 sessionStorage:仅在客户端(即浏览器)中保存,不参与和服务器的通信;不会自动把数据发送给服务器,仅在本地保存 localStorage:仅在客户端(即浏览器)中保存,不参与和服务器的通信;不会自动把数据发送给服务器,仅在本地保存 5)易用性 cookie:需要自己进行封装,原生的cookie接口不够友好 sessionStorage:原生接口可以接受,可以封装来对Object和Array有更好的支持 localStorage:原生接口可以接受,可以封装来对Object和Array有更好的支持应用场景
cookie:判断用户是否登录过网站,以便实现下次自动登录或记住密码;保存事件信息等 sessionStorage:敏感账号一次性登录;单页面用的较多(sessionStorage 可以保证打开页面时 sessionStorage 的数据为空) localStorage:常用于长期登录(判断用户是否已登录),适合长期保存在本地的数据转载地址:https://blog.csdn.net/yyychocolate/article/details/108152082 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月11日 00时54分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
编程术语成系统中文化的意义
2019-04-26
草蟒 Python 中文 API 与 IDE 支持尝鲜
2019-04-26
一种改进中文 API 可读性的方法:参数不限于在末尾
2019-04-26
中文编程开发工具的生存模式探讨
2019-04-26
写给木兰编程语言研发团队的公开信
2019-04-26
为什么要急着为「木兰」编程语言贴上“造假”的标签?
2019-04-26
编程语言国产化的关键一战——对肆意污名化“木兰”编程语言说“不”
2019-04-26
各大媒体对「木兰」编程语言的不当言论盘点
2019-04-26
戳破针对「木兰」编程语言的拙劣谣言
2019-04-26
为「木兰」编程语言添加对中文命名标识符的支持
2019-04-26
悬赏万元,重现「木兰」编程语言编译器
2019-04-26
跳出编程语言本身看中文编程语言设计
2019-04-26
RPLY 入门例程中文化
2021-06-29
木兰编程语言入门教程之一——浅介
2021-06-29
木兰编程语言入门教程之二——控制走向
2021-06-29
基于「木兰」编译器,加十行代码实现 ∈ (属于集合)语法
2021-06-29
创建安卓键盘演示——“好不”
2021-06-29
木兰编程语言入门教程之三——函数和类型
2021-06-29
基于「木兰」逆向工程用 pyinstaller 生成可执行文件
2021-06-29
从微盟事件看商业数据公开化的必然趋势
2021-06-29