【发布时间】:2022-08-15 07:04:35
【问题描述】:
以下代码显示了一个 <iframe sandbox... 指向一个页面,该页面打开一个测试 websocket,并显示成功打开的消息。它在 Chrome 和 Edge 上正常工作,立即打印 It worked! 消息。
在 Firefox 上,它以 Uncaught DOMException: The operation is insecure. 失败,没有进一步的理由。
<!DOCTYPE html>
<html lang=\"en\">
<body>
<iframe
sandbox=\"allow-scripts\"
src=\"https://firefox-wss-example.tiiny.site/\"></iframe>
</body>
</html>
链接的websocket页面源码简单如下:
<!DOCTYPE html>
<html lang=\"en\">
<body>
<script>
const ws = new WebSocket(\'wss://demo.piesocket.com/v3/channel_1?notify_self\');
ws.addEventListener(\'open\', () => {
console.log(\'It worked!\');
});
</script>
</body>
</html>
我尝试了wss:// 和ws:// 的混合,以及允许的CORS 标头,但是尽管有适当的设置,我的尝试都没有解决Firefox 上的问题。我开始认为这是一个 Firefox 97 错误,但不确定如何验证。
为什么这个 sn-p 在大多数浏览器上都可以工作,但在 Firefox 上却失败了?
-
我在最新的 Firefox 中看到完全相同的问题,没有错误的原因......在其他浏览器中工作正常
标签: javascript html firefox websocket