使用window.opener会导致CORS错误

时间:2018-04-12 10:46:08

标签: javascript html5 cors

我有一个创建弹出窗口的应用程序,它会加载一个页面,然后从打开的窗口中提取数据,如下所示:

var globals = window.opener.globalsCache;

但是,当部署到生产环境时,会间歇性地导致以下错误:

DOMException: Blocked a frame with origin from accessing a cross-origin frame

请注意,弹出窗口与开启者具有完全相同的URL,但散列除外。 (即https:/hostname.tld/application/#page-name)

以前有人见过这个问题吗?关于它为什么会发生以及如何解决的任何想法?

1 个答案:

答案 0 :(得分:0)

window.open使用另一个域“window.opener”,因此document.referrer将不匹配。检查这个参考。同一问题:Guarantee the origin (parent URL) of a cross domain window.opener call by preliminary CORS call to the server