59

我们在 Linode 盒子上设置了端口 8080 上的 websocket 服务器。Chrome 和 Opera 运行良好。然而,Firefox 抱怨该操作不安全。

“操作不安全:代码 18”

如果我尝试在页面加载之前在 Web 控制台中创建一个新的 WebSocket 对象,那么一切都很好。但是,在页面加载后有些东西很糟糕,然后我就无法再创建对象了。请参阅随附的屏幕截图。在此处输入图像描述

我不知道什么操作是不安全的,甚至不知道如何诊断。

4

6 回答 6

86

正如您在另一个答案中指出的那样,默认情况下,Firefox 不允许使用 https://to 。ws://

去火狐的about:config和切换network.websocket.allowInsecureFromHTTPS将摆脱SecurityError.

于 2012-08-20T18:13:39.473 回答
63

我解决了这个问题。应用程序本身在 SSL 下,但正在访问的 websocket 不是。Chrome 和 Opera 不在乎,但 Firefox 不在乎。根据:

https://bugzilla.mozilla.org/show_bug.cgi?id=303952

这是已知的,不被视为错误。Mozilla 的回应: wontfix

解决方案,将 websocket 服务器放在 SSL 下并使用 wss://

于 2012-08-02T02:11:07.840 回答
1

有同样的问题,并试图通过更改其中不起作用来network.websocket.allowInsecureFromHTTPS解决about:config

最终找到这篇文章 =>未处理的拒绝(SecurityError):操作不安全。在一个新的 create-react-app 项目上

在 index.js 中更改它最终为我工作

serviceWorker.register();
//serviceWorker.unregister();
于 2020-02-12T02:42:54.030 回答
0

这是基于有限信息的预感,我可能应该将其放入评论中,但我还没有足够的声誉点来做到这一点。

查看您的日志,似乎从收到[object Websocket](time 17:46:36.683) 到您收到The connection to ws://.....(time 17:47:00:952) 错误消息已经过去了 24 秒。长时间的延迟让我相信服务器可能正在超时并关闭 websocket 连接。查看此答案以获取潜在的解决方案。

于 2012-08-01T22:34:11.473 回答
0

在 Firefox 中打开“about:config”网址。搜索 allowInsecureFromHTTPS 并将其设置为 true

于 2020-03-02T12:52:03.597 回答
0

除了安全的 ssl 上下文和跨域策略之外,分配一些端口也可以触发错误。

什么是 Firefox 的有效 http 端口?我不确切知道,但必须在1500and之间64000,否则控制台将显示:

SecurityError: The operation is insecure.

http链接会说:

This address is restricted

This address uses a network port which is normally used for purposes other than Web browsing.
Firefox has canceled the request for your protection.

在此处输入图像描述

于 2020-10-04T23:27:33.487 回答