我的页面P1上有一个iframe,它位于服务器S1上。在运行时,我iframe.src=
加载iframe中服务器S2上托管的页面P2。
我知道CORS和服务器S2上的P2页面,我已经设置了Access-Control-Allow-Origin: *
,当我在浏览器中查看时,我可以在响应标题上确认相同的内容。
现在页面P2及其所有资产只加载文件,但是当我尝试使用window.frames["iframe"].document
从P1访问P2的DOM时,它会抛出权限错误。
即使我在服务器S2上设置Access-Control-Allow-Origin: *
,为什么我仍然无法访问P2的DOM?这是Access-Control-Allow-Origin: *
的工作方式吗?
答案 0 :(得分:1)
您可以使用PostMessages设置文档之间的通信。即使他们来自不同的领域。
您可以通过PostMessage发送数据。这是有限的,但这比没有更好
看看http://easyxdm.net/wp/它有很好的api可以使用。很久以前我已经跨域http< - >使用该lib https ajax请求。