0

我正在开发小书签,它可以帮助用户分享图像。在对用户进行身份验证时,我需要读取由域设置的Cookie:www.xxx.com使用书签小甜饼阅读

小书签JavaScript是由担任bookmarklet.xxx.com但由于这JavaScript是哪个书签被称为网站上呈现,它只是访问该网站由www.xxx设置的C​​ookie,而不是那些.com

我已经研究过了,根据SO的一些答案,这是一个安全问题,因此来自其他域的cookie无法访问。

我试图通过www.xxx.com/iframe/iframe.html渲染的隐藏的iframe执行我的剧本,并没有访问的Cookie,但问题是这样的脚本不能将值传递给我小书签脚本。而且我无法访问另一个安全问题的Iframe DOM。

请提出一个合适的方法,以便我可以解决这个问题。

回答

1

您可以使用postMessage将信息从iframe传递回您的页面。

发送消息:

windowReference.postMessage("The user is 'bob' and the password is 'secret'", 
       "https://secure.example.net"); 

阅读邮件

window.addEventListener("message", receiveMessage, false); 

function receiveMessage(event) 
{ 
    if (event.origin !== "http://example.org:8080") 
    return; 

    // ... 
} 
+0

当然让我试试看。我真的会送你花,如果它工作@epascarello;) –

+0

这是好东西,但我认为它与其他浏览器有一些严重的兼容性问题! –

+0

好吧,你没有很多其他的选择。 – epascarello