浏览器的本地存储有哪些区别?

  主要介绍cookie、localStorage、sessionStorage这三种本地存储方式的区别以及优劣。

  cookie的类型为小型文本文件,大小一般不超过4kb,它由一个键值对(Name、Value)和其他几个用于控制cookie的有效期、安全性、使用范围的可选属性组成。cookie在每次向服务端请求数据时都会被发送,如果不使用HTTPS并对其加密,其保存的信息很容易被窃取,导致安全风险。

  而localStorage是一种持久化的本地存储,除非主动删除,否则数据是永远不会过期的。大小为5M(具体由浏览器厂商来决定)。其本质是对字符串的读取,如果存储内容多的话会消耗内存空间,导致页面会卡。

  sessionStorage和localStorage的使用方法基本一致,唯一不同的是生命周期,一旦页面被关闭,sessionStorage将会删除数据。

  三者的相同点:

    都在本地存储数据。

  三者的区别:

    存储大小:cookie的数据大小不得超过4kb,另外两个虽然也有存储大小的限制,但怎么都比cookie大得多

    有效时间:localStorage除非手动删除数据,否则有效时间是永久。sessionStorage在页面关闭后数据自动删除。cookie在设置的过期时间之后数据失效。

    安全性:cookie会自动把数据传输到服务器,服务器也可以写cookie带客户端。sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。通常 cookie信息都是使用HTTP连接传递数据,这种传递方式很容易被查看,所以cookie存储的信息容易被窃取。假如cookie中所传递的内容比较重要,那么就要求使用加密的数据传输。

 

   本文内容是我自己在网上收集并总结的,用于个人总结并了解知识点,若有侵权请联系本作者,若内容有问题,期待各位大佬的指正!

posted @   twldw  阅读(335)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示