gpt4 book ai didi

javascript - 如何克服 iframe 的同源策略?

转载 作者:行者123 更新时间:2023-12-02 07:00:20 26 4
gpt4 key购买 nike

我主要是想在 Iframe 中显示第二个网站,该网站属于同一个组织但托管在不同的域名上。我正在尝试将一些数据从 iframe 传递到父框架。

父框架 = foo.com,

iframe = bar.com

如果我尝试通过 parent.setData( data ) 从 iframe 传递数据,这会给我一个同源策略错误。

所以我围绕这段代码做了一个包装,托管在 foo.com/js/wrapper.js,其中包含这个函数:

var Foo = {};
Foo.setData = function(data)
{
parent.setData(data);
}

所以现在我在 bar.com 上的 Iframe 正在做:

<script src="http://foo.com/js/wrapper.js"></script>
<script>
Foo.setData( someData );
</script>

但是,即便如此,即使 wrapper.js 托管在父域上,也会在 parent.setData 行上给我一个安全错误。

有没有其他方法可以克服这个问题?

最佳答案

您正在寻找 postMessage,请在此处阅读:https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage

编辑:抱歉,没看到所有的评论都说同样的话

关于javascript - 如何克服 iframe 的同源策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21940687/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com