从父 iframe 到子 iframe 的跨源通信

Communicating cross-origin from parent to child iframe

本文关键字:iframe 通信 到子 从父      更新时间:2023-09-26

我正在通过第三方Javascript工作。我对父页面和来自不同来源的子框架之间的通信特别感兴趣。使用 window.postMessage,从子级安全地发送消息并让父级通过message事件接收这些消息是很简单的。

我没有运气走向另一个方向。我是否可以得到一些确认,即无法使用postMessage从父母与孩子进行通信?如果不是,有什么方法可以解决此问题?

您应该能够在任何两个协作窗口之间使用.postMessage()。 您向哪个方向发送消息并不重要。 如果它不在一个方向上工作,那么实现中可能存在错误。 您可能需要确保具有正确的窗口对象。

对于 iframe,您可能希望使用 .contentWindow 属性在现代浏览器中获取其窗口。

这里有一些很好的文档:https://developer.mozilla.org/en-US/docs/Web/API/window.postMessage