在嵌套的 iframe 中侦听 window.postMessage

Listening for a window.postMessage within nested iframes

提问人:jaypee 提问时间:10/31/2023 最后编辑:jaypee 更新时间:10/31/2023 访问量:15

问:

我拥有一个应用程序,我们可以调用域为 b.com 的“B”。我的应用程序作为我不拥有的应用程序内部运行,我们可以调用域为 a.com 的“A”。iframe

我的应用程序 (B) 呈现了另一个服务,我们可以将这个域为 c.com 的应用程序称为“C”。iframe

因此,总的来说,我们有嵌套的 iframe: A -> B(我的域作为 iframe)-> C (iframe)。

我需要做的是让 B 监听 C 发出的事件。window.postMessage

我只能访问 B 的代码库。

此代码未按预期工作:

const logMessage = (event: MessageEvent) => {
  console.log(event)
}

React.useEffect(() => {
  window.addEventListener('message', logMessage)

  return () => {
    window.removeEventListener('message', logMessage)
  }
}, [])
ReactJS iframe 窗口 PostMessage

评论


答: 暂无答案