sessionStorage、localStorage、cookie 的简介与区别

1.localStorage 生命周期是永久,这意味着除非用户显示在浏览器提供的UI 上清除 localStorage 信息,否则这些信息将永远存在。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。

2.sessionStorage 仅在当前会话下有效,关闭页面或浏览器后被清除。存 放数据大小为一般为 5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。源生接口可以接受,亦可再次封装来对 Object 和 Array 有更好的支持。

作用域不同:不同浏览器无法共享 localStorage 或 sessionStorage 中的信息。相同浏览器的
不同页面间可以共享相同的 localStorage(页面属于相同域名和端口),但是不同页面或标签页
间无法共享 sessionStorage 的信息。这里需要注意的是,页面及标

3.cookie 的优点:具有极高的扩展性和可用性

   1.通过良好的编程,控制保存在 cookie 中的 session 对象的大小。
   2.通过加密和安全传输技术,减少 cookie 被破解的可能性。
   3.只有在 cookie 中存放不敏感的数据,即使被盗取也不会有很大的损失。
   4.控制 cookie 的生命期,使之不会永远有效。这样的话偷盗者很可能拿到的就是一个过期的 cookie。

4.cookie 的缺点:

1.cookie 的长度和数量的限制。每个 domain 最多只能有 20 条 cookie,每个cookie 长度不能超过 4KB。
否则会被截掉。
2.安全性问题。如果 cookie 被人拦掉了,那个人就可以获取到所有 session 信息。加密的话也不起什么
作用。
3.有些状态不可能保存在客户端。例如,为了防止重复提交表单,我们需要在服务端保存一个计数器。若
吧计数器保存在客户端,则起不到什么作用。

localStorage、sessionStorage、Cookie 共同点:
都是保存在浏览器端,且同源的.

猜你喜欢

转载自blog.csdn.net/ZiChen_Jiang/article/details/107143548