javascript - Google Chrome 上的 WebSocket 客户端返回错误 1006
问题描述
我有同样的问题,我是 Node js 的新手,所以我不知道如何解决它。我正在尝试将 WebSocket 服务器连接到端口 8000,并且我正在使用 WSS。我在服务器上没有任何错误,即使没有连接到服务器也运行它仍然给出错误,所以我知道它在客户端。
错误原因是 0 错误代码是 1006(我从 onerror 得到了 e.reason)
我正在使用谷歌浏览器,我不知道它是否适用于其他浏览器。应用程序.js
http.createServer(function(req, res) {
res.writeHead(200);
req.on('data', function(e) {
res.write(e);
})
req.on('close', function() {
console.log('CONNECTION CLOSED')
})
}).listen(8000);
索引.html
<p id="status">Connecting...</p>
<input id="message" />
<button id="submit">Send</button>
<script>
var s = new WebSocket("wss://StarliteServer.cs641311.repl.run:8000", ["soap", "wamp"]);
s.onopen = function() {
document.getElementById("status").innerHTML="Connected";
}
document.getElementById("submit").addEventListener("click", function() {
s.send(document.getElementById("message").value);
});
s.onmessage = function(e) {
alert(e.data);
}
s.onclose = function(e) {
document.getElementById("status").innerHTML = "ERROR: "+e.code
}
</script>
解决方案
如果您的浏览器客户端报告关闭代码 1006,那么您应该查看 websocket.onerror(evt) 事件以获取详细信息。
关闭代码 1006 是一个特殊代码,表示连接被浏览器实现异常(本地)关闭。
从以下链接了解更多信息
推荐阅读
- jenkins - Jenkins 中的嵌入式构建状态(本地主机链接)
- python - 删除另一列中具有多个唯一值的组
- c# - Xamarin C# - 从不同的布局设置 TextView
- asp.net-core - 构建应用程序时 WebSockets 不工作
- c# - 5 个日志实例在一个控制台 Serilog
- ios - 增加滑块宽度:快速
- wpf - 如何删除出现在 VerticalAlignment = Center 上的 DatagridTextCell 周围的边框?
- macos - 在 Mojave 上获取鼠标坐标
- angular - router.navigate 不适用于命名路由器插座
- arrays - 快速使用任何元素类型是一种好习惯吗?