浏览器端数据存储方式对比:cookie、session和webStorage -- 知识铺
数据操作相关视频讲解:
1.cookie
由服务端生成,保存在客户端(由于前后端有交互,所以安全性差,且浪费带宽)
存储大小有限(最大 4kb )
存储内容只接受 String 类型
保存位置:
若未设置过期时间,则保存在 内存 中,浏览器关闭后销毁
若设置了过期时间,则保存在 系统硬盘 中,直到过期时间结束后才消失(即使关闭浏览器)
数据操作不方便,原生接口不友好,需要自己封装
应用场景:
判断用户是否登陆过网站,以便下次登录时能够实现自动登录(或者记住密码)
保存登录时间、浏览次数等信息
2.session
是后端关心的内容,依赖于 cookie(sessionID 保存在cookie中)
保存在服务端
存储大小无限制
支持任何类型的存储内容
保存位置:服务器内存,若访问较多会影响服务器性能
3.webStorage
webStorage 是 html5 提供的本地存储方案,包括两种方式:sessionStorage 和 localStorage。相比 cookie 这种传统的客户端存储方式,webStorage 有许多优点:
保存在客户端,不与服务器通信,因此比 cookie 更安全、速度更快
存储空间有限,但比 cookie 大(5MB)
仅支持 String 类型的存储内容(和 cookie 一样)
html5 提供了原生接口,数据操作比 cookie 方便
localStorage
持久化的本地存储,浏览器关闭重新打开数据依然存在(除非手动删除数据)。
应用场景:长期登录、判断用户是否已登录,适合长期保存在本地的数据。
浏览器窗口关闭后数据被销毁。
应用场景:敏感账号一次性登录。
总结
综上所述,我们可以知道,cookie 和 webStorage( localStorage、sessionStorage )是前端工程师关心的内容,session 是后端关心的内容。
cookie 存储量小、安全性差、数据操作接口不友好,而 webStorage 存储量较大、安全性较高、数据接口友好。
若要持久的存储方式,推荐使用 localStorage
若要一次性会话的存储,推荐使用 sessionStorage
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
- 赞
- 收藏
- 评论
- 举报
相关文章
- 原文作者:知识铺
- 原文链接:https://index.zshipu.com/geek001/post/20240428/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%AB%AF%E6%95%B0%E6%8D%AE%E5%AD%98%E5%82%A8%E6%96%B9%E5%BC%8F%E5%AF%B9%E6%AF%94cookiesession%E5%92%8CwebStorage--%E7%9F%A5%E8%AF%86%E9%93%BA/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。
- 免责声明:本页面内容均来源于站内编辑发布,部分信息来源互联网,并不意味着本站赞同其观点或者证实其内容的真实性,如涉及版权等问题,请立即联系客服进行更改或删除,保证您的合法权益。转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。也可以邮件至 sblig@126.com