问题描述
|
我正在向Safari的本地存储写入一个简单的值,如果Safari然后关闭,它将能够读取有问题的值。
有趣的是,我能够使用以下代码将数据写入本地存储:
localStorage.setItem(\"savedData\",JSON.stringify(cookieValue));
但是,当我关闭所有Safari实例并打开一个新实例时,本地存储显示为空。
有人知道为什么会这样吗?
解决方法
解决方案相当明显,因为我忽略了一些更好的细节,这是我的错误。本质上,浏览器试图使安全数据远离不安全数据。
尝试存储数据的页面是http,而尝试检索数据的页面是https。
localStorage与
globalStorage [location.hostname],带有
范围仅限于
HTML5来源(方案+主机名+
非标准端口)和localStorage
作为Storage as的实例
反对
globalStorage [location.hostname]被
StorageObsolete的一个实例。对于
例如,http://example.com不是
能够访问相同的localStorage
对象为https://example.com,但它们
可以访问相同的globalStorage
项目。 localStorage是一个标准
接口,而globalStorage是
非标。原“ localStorage”为
在Firefox 3.5中引入。
从Mozilla-DOM存储
我假设这个概念适用于所有浏览器,然后再次只是一个假设。
希望这可以帮助处于相同情况的人们。