+
95
-

不同的子域名之间的iframe如何相互调用?

不同的子域名之间的iframe如何相互调用?

比如a.test.com站点页面调用b.test.com的iframe页面,那么iframe如何与parent进行相互调用,我试了下,显示跨域失败,请问高手怎么解决?

网友回复

+
15
-

在不同的子域名之间进行跨域调用是一种常见的安全策略,浏览器会限制跨域访问以保护用户数据安全。在这种情况下,可以通过以下方法来解决跨域调用问题:

方法一:使用 postMessage 进行通信在父页面中发送消息:在父页面(a.test.com)中使用 postMessage 方法向子页面(b.test.com)发送消息。
const iframe = document.getElementById('your-iframe-id');
iframe.contentWindow.postMessage('message', 'https://b.test.com');
在子页面中接收消息:在子页面(b.test.com)中监听消息事件,处理来自父页面的消息。
window.addEventListener('message', function(event) {
  if (event.origin === 'https://a.test.com') {
    // 处理接收到的消息
  }
});
方法二:使用 window.location.h...

点击查看剩余70%

我知道答案,我要回答