[英]WebSocket to localhost not working on Microsoft Edge
我创建了一个简单的WebSocket服务器,并尝试使用以下代码连接到它:
function test(name) {
var ws = new WebSocket('ws://localhost:1234');
ws.onopen = function () {
ws.send('Hello from ' + name);
}
}
test('Edge');
这在Windows10上的Chrome和IE11上运行良好但是当我从Edge尝试时,没有调用onopen
函数,而是最终我得到以下错误:
SCRIPT12029:WebSocket错误:网络错误12029,无法建立与服务器的连接
这发生在Edge的12.10240版本中。
这里询问了类似的问题,但错误信息不同。
我试过的事情:
localhost
, 127.0.0.1
,实际IP 尝试与其他计算机通信时,不会发生此问题。
这是Edge中的缺陷还是我做错了什么?
我遇到了类似的问题,但实际上是在浏览器中导航到页面时。 我可以使用短语localhost,它工作正常,但当我使用我的机器名称时,我没有工作。 我找到了这个论坛 ,他们建议您在管理员提示符中运行以下命令:
CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe
为我工作。 以为您可能会看到某种形式的同一问题。
正如论坛建议的那样,您现在也可以通过打开Edge并导航到“ about:flags ”,然后在“Developer Settings”下勾选“ Allow localhost loopback(这可能会使您的设备面临风险 )”。 应该感觉比将随机内容粘贴到命令提示符更安全一些。
编辑:正如下面指出的tresf,about:flags中的loopback复选框似乎已停止工作(作为修复),因此您将使用CheckNetIsolation命令使Edge免除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.