localStorage何时清除?

时间:2011-12-16 16:27:26

标签: html5 local-storage

我可以期望将数据保存在localStorage中多长时间。普通用户的localStorage数据会持续多长时间?如果用户没有清除它,它会持续到浏览器重新安装吗?

这是否在浏览器中保持一致?

5 个答案:

答案 0 :(得分:72)

localStorage也称为Web存储,HTML5存储和DOM存储(这些都意味着相同的事情)。

localStorage类似于sessionStorage, ,但 存储在localStorage中的数据没有到期时间,而存储在sessionStorage中的数据在浏览会话结束时(即浏览器已关闭)。

localStorage适用于所有浏览器,但持久性并未始终如一。特别是,localStorage可以通过用户操作清除,并且可能会被无意中清除(谁会认为清除所有cookie也会清除localStorage?)。

在Firefox中,当满足以下三个条件时,localStorage将被清除:(a)用户清除最近的历史记录,(b)选择要清除的cookie,(c)时间范围是"一切"

在Chrome中,当满足以下条件时,localStorage会被清除:(a)清除浏览数据,(b)" Cookie和其他网站数据"被选中,(c)时间框架从时间开始""。在Chrome中,现在也可以delete localStorage for one specific site

在IE中,要清除localStorage:(a)工具 - Internet选项,(b)常规选项卡,(c)退出时删除浏览历史记录,(d)确保" Cookie和网站数据" (或者"临时互联网文件和网站文件")被选中,(e)考虑取消选中"保留收藏夹网站数据"在顶部

在Safari中:(a)单击Safari(b)首选项(c)选择隐私选项卡(d)单击删除所有网站数据(e)单击立即删除

Opera:尽管Opera网站上有关于localStorage的精彩文章,但我还没有找到关于如何清除localStorage的明确(非程序化)指令。如果有人发现,请在此答案下方留下评论参考链接。

Opera dev site对localStorage有很好的总结:

  

目前在客户端存储数据的方式 - cookies - 是一种   问题:

     
      
  • 低尺寸:Cookie的最大大小通常约为4 KB   存储任何类型的复杂数据并不是很好

  •   
  • Cookie很难跟踪两个或多个交易   网站,可能发生在两个或多个不同的标签

  •   
  • 缓存   可以使用跨站点脚本等技术来利用   导致安全漏洞

  •   
     

其他(不太受欢迎的)替代品   cookies包括涉及查询字符串,隐藏表单的技术   字段,基于flash的本地共享对象等。每个都有自己的集合   与安全性,易用性,尺寸限制等有关的问题   到目前为止,我们一直在使用非常糟糕的方式存储数据   用户的结局。我们需要一种更好的方法,这就是Web Storage的用武之地   英寸

     

网络存储

     

W3C Web存储规范被设计为更好的方式   在客户端存储数据。它有两种不同的类型   存储:会话存储和本地存储。

     

会话和本地存储通常都能够存储   每个域5 MB的数据,这远远超过cookie。

资源:

https://dev.opera.com/articles/web-storage/

http://www.quirksmode.org/html5/storage.html

http://www.ghacks.net/2015/02/05/how-to-clear-web-storage-in-your-browser-of-choice/

https://nakedsecurity.sophos.com/2014/11/05/how-to-clear-out-cookies-flash-cookies-and-local-storage/

http://www.opera.com/dragonfly/documentation/storage/

DOMStorage article on MDN (written by John Resig)

http://ejohn.org/blog/dom-storage/

答案 1 :(得分:71)

W3C草案说这个

  

用户代理应仅出于安全原因或用户请求时,从本地存储区域过期数据。用户代理应始终避免在可访问该数据的脚本正在运行时删除数据。

因此,如果浏览器遵循规范,它应该持续存在,直到用户在所有浏览器上删除它,我还没有找到任何已删除的项目。

要阅读的好文章也是http://ejohn.org/blog/dom-storage/

答案 2 :(得分:2)

只要用户选择清除存储(全部或单个值),localstorage中的内容就是持久的

关于浏览器的一致性,localstorage目前在每个主要浏览器上都可用,包括IE8 +(参见http://caniuse.com/#feat=namevalue-storage

答案 3 :(得分:1)

在Chrome中执行'清除浏览数据' ,如果您选择Cookie和其他网站和插件数据'选项然后sessionStorage数据将被删除。

答案 4 :(得分:1)

持续时间

无限制。数据会通过浏览器保留,并且操作系统会重新启动。

容量

每个域在LocalStorage中至少可以存储 5MB数据

对于some browsers,您最多可以存储 1GB数据