Javascript 如何在iframe中通过localStorage获取和设置项
我有两个具有不同主机名的网页,例如,网页A的主机名是“A.b.info”,另一个是“c.d.com”。现在我想通过iframe将网页B混合到网页A中,也就是说iframe的属性src是'c.d.com'。我在网站B中使用了localStorage,当我在Chrome Incognito窗口中打开'A.B.info'时,网页B抛出了一个异常:Javascript 如何在iframe中通过localStorage获取和设置项,javascript,iframe,local-storage,Javascript,Iframe,Local Storage,我有两个具有不同主机名的网页,例如,网页A的主机名是“A.b.info”,另一个是“c.d.com”。现在我想通过iframe将网页B混合到网页A中,也就是说iframe的属性src是'c.d.com'。我在网站B中使用了localStorage,当我在Chrome Incognito窗口中打开'A.B.info'时,网页B抛出了一个异常: DOMException: Failed to read the 'localStorage' property from 'Window': Access
DOMException: Failed to read the 'localStorage' property from 'Window': Access is denied for this document.
这只会发生在Chrome的匿名窗口中。请告诉我如何处理此异常?我认为您无法跨域直接访问localStorage、Cookie或sessionStorage等属性 然而,你可以绕过这个。您需要设置一些消息通信,以便网页A和B可以相互发送消息。在这些消息中,可以包含原始字符串数据,其中可以包含本地存储数据。(我认为这不是一件非常安全的事情,特别是当你分享秘密或某种身份验证数据时) 看看这个例子:
向Chrome的bug追踪器打开一个问题。