gpt4 book ai didi

javascript - top.postMessage 源错误未被捕获

转载 作者:可可西里 更新时间:2023-11-01 02:12:59 24 4
gpt4 key购买 nike

我正在尝试使用 postMessage 实现通信。有一个主页,它打开一个带有来自不同域的 iframe 的弹出窗口。到目前为止这工作正常,但我想捕获以下错误,该错误在我打开来源错误的 iFrame 时发生。

Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('myOriginURL') does not match the recipient window's origin ('myWindowsOrigin').

origin = 'http://www.myorigin.ch';
if (window.postMessage) {
try {
top.postMessage('hello', origin);
}
catch(ex) {
alert('an error occured');
}
}

问题是代码永远不会运行到 catch block 中。有趣的是 chrome 在控制台中显示错误,而所有其他主流浏览器什么都不做(没有警报,没有错误)

如何处理 postMessage 中的错误?

最佳答案

我认为这是故意的。您的上下文不应该知道消息是否已成功发送(出于安全目的)

关于javascript - top.postMessage 源错误未被捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23883440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com