Javascript 从IFrame(同一域)访问父文档时出错

Javascript 从IFrame(同一域)访问父文档时出错,javascript,html,iframe,url-redirection,Javascript,Html,Iframe,Url Redirection,我正试图使用window.parent.document从iframe访问父级文档,但出现以下错误- Uncaught DOMException: Blocked a frame with origin "https://abc.xyz.com" from accessing a cross-origin frame. 但是父对象和iframe的主机都是相同的。 两者都有主机https://abc.xyz.com 在iframe中,我通过几个URL重定向它。所以它从 https://abc.x

我正试图使用
window.parent.document
从iframe访问父级文档,但出现以下错误-

Uncaught DOMException: Blocked a frame with origin "https://abc.xyz.com" from accessing a cross-origin frame.
但是父对象和iframe的主机都是相同的。 两者都有主机
https://abc.xyz.com

在iframe中,我通过几个URL重定向它。所以它从

https://abc.xyz.com
然后去

https://www.facebook.com

然后再次重定向到
https://abc.xyz.com

我尝试在重定向后访问文档,但收到此错误。
有没有想过为什么会发生这种情况?请提供帮助。

您可以使用
postMessage
(阅读更多信息)

在iframe中,将其称为:

window.parent.postMessage({message: 'stuff you want to send'}, 'https://abc.xyz.com/');
在父窗口中,您可以侦听如下消息事件:

window.addEventListener('message', function(evt) {
   if(evt.origin == 'https://abc.xyz.com/')
       console.log('Data: ' + evt.data.message);
}, false);

https://abc.xyz.com -> https://www.facebook.com
=交叉原点。。。但我可能没抓住重点?!当父文档从www.facebook.com重定向到again后,我正在从iframe访问它。访问父文档时,iframe上的
src
值是多少?一个更干净的解决方案是使用postMessage。当我试图访问父文档时,我的iframe的src是-
https://abc.xyz.com/addCards
Hmm,这似乎很奇怪。也许有一些缓存正在发生,这让它陷入困境?对不起,我帮不了什么忙。是的,我可以使用postMessage。我只是想知道为什么我不能访问家长的文档,即使我在一系列重定向之后回到了与家长相同的域,因为浏览器试图更好地保护过度而不是保护不足。(不知道确切的技术原因)。