关于 HTML5 存储的概念,我有几个问题。我浏览了相同的 w3c 规范、书籍和教程,但我仍然对某些概念有点不清楚:
假设我访问网站 A。一些 JavaScript 在我的浏览器中运行,它设置了一个键值对,比如('username','deepak')
. 然后我访问网站 B,它还在本地存储中添加了一个键值对作为('username','mahalingam')
.
- 他们将如何区分?
- 网站 B 会覆盖网站 A 在我的本地存储中设置的值吗?
- 我们如何确保网站不会删除我所有的本地存储?
关于 HTML5 存储的概念,我有几个问题。我浏览了相同的 w3c 规范、书籍和教程,但我仍然对某些概念有点不清楚:
假设我访问网站 A。一些 JavaScript 在我的浏览器中运行,它设置了一个键值对,比如('username','deepak')
. 然后我访问网站 B,它还在本地存储中添加了一个键值对作为('username','mahalingam')
.
网站 A 和网站 B 将拥有自己的本地存储。通常,您必须将某些信息存储在服务器数据库中并将其同步到本地存储。
我会使用本地存储作为缓存来获取数据一次并根据我想要使缓存失效的时间间隔以一定的间隔更新它。例如,当用户 A 注销而用户 B 想要登录时,您可以与服务器同步。
查看 Web Storage 的 HTML5 规范中的隐私部分。
更多信息信息和资源在这里:HTML5 Rocks。
我建议使用本地服务器设置,例如 Linux/Mac/Windows、Apache、MySQL、PHP 堆栈 (LAMP/MAMP/WAMP) 在 localhost (127.0.0.1) 上进行测试。
由于 HTML5 规范建议,大多数浏览器会将每个窗口和选项卡的每个域限制为5 MB 。
我还没有尝试过,但是您也许可以看看在 Apache 的httpd.conf中更改本地主机的端口号(为此,找到Listen
并更改与之关联的端口),看看这是否可以解决问题。基本上,您在不同的端口号下运行每个测试以获得每个测试的整个存储限制。
另一种方法是创建一个 Chrome 扩展程序。您可以在此处阅读有关此内容的更多信息: