一尘不染

localStorage有多持久?

javascript

我在很大程度上依赖localStorage来编写插件。所有用户设置都存储在其中。有些设置要求用户写正则表达式,如果他们的正则表达式规则在某个时候消失了,他们会感到很遗憾。所以现在我想知道localStorage的持久性如何。

从规格:

用户代理应仅出于安全原因或在用户要求时才使本地存储区中的数据过期。

上面看起来像在客户端上的cookie一样工作。即,当用户清除所有浏览器数据(历史记录,Cookie,缓存等)时,localStorage也将被截断。这个假设正确吗?


阅读 269

收藏
2020-05-01

共1个答案

一尘不染

Mozilla像cookie一样实现它:

当时间范围为“所有”时,可以通过“工具->清除最近的历史记录-> Cookies”清除DOM存储(通过nsICookieManager ::
removeAll)在DOM存储中 _,无法为您的任何数据指定有效期限。所有到期规则均由用户决定。对于Mozilla,大多数规则都是从Cookie相关的过期规则继承的。_因此,您可能希望大多数DOM存储数据至少持续一段有意义的时间。

Chrome像缓存一样实现它:

LocalStorage不是安全存储

HTML5本地存储将未加密的数据以字符串形式保存 在常规浏览器缓存中

坚持不懈

在磁盘上,直到被用户(删除缓存)或应用删除

https://developers.google.com/web-
toolkit/doc/latest/DevGuideHtml5Storage


至于“ Cookie的替换”,不完全是

Cookies和本地存储确实可以满足不同的目的。Cookies主要用于读取服务器端,LocalStorage只能读取客户端。所以问题是,在您的应用程序中,谁需要此数据客户端还是服务器?

2020-05-01