9

我的页面 P1 上有一个 iframe,它托管在服务器 S1 上。在运行时,我会iframe.src=加载 iframe 内服务器 S2 上托管的页面 P2。

我知道 CORS 和服务器 S2 上的页面 P2,我已经设置Access-Control-Allow-Origin: *了,当我在浏览器中检查它时,我可以在响应头上确认相同的内容。

现在页面 P2 及其所有资产只加载文件,但是当我尝试使用 P1 访问 P2 的 DOM 时window.frames["iframe"].document,它会引发权限错误。

即使我Access-Control-Allow-Origin: *在服务器 S2 上设置,为什么我仍然无法访问 P2 的 DOM?这Access-Control-Allow-Origin: *是应该工作的方式吗?

请求-响应

4

1 回答 1

1

您可以使用 PostMessages 设置文档之间的通信。即使他们来自不同的域。

您可以通过 PostMessage 发送数据。它是有限的,但这总比没有好

看看http://easyxdm.net/wp/它有很好的 api 可以使用。很久以前,我使用该库进行了跨域 http <-> https ajax 请求。

于 2013-03-27T08:55:54.450 回答