我正在 JavaScript 客户端和 node.JS 服务器之间编写 WebSocket 连接。
我的客户端代码:
<!DOCTYPE html>
<html>
<head>
<title>Socket Test</title>
</head>
<body>
</body>
<script>
const ws = new WebSocket('wss://mydomain.in:26031/');
ws.onopen = function () {
console.log('WebSocket Client Connected');
ws.send('Hi this is web client.');
};
ws.onmessage = function (e) {
console.log("Received: '" + e.data + "'");
};
</script>
服务器代码:
const net = require('net');
const server = net.createServer((socket) => {
socket.on('data', (data) => {
console.log(data.toString());
});
socket.write('SERVER: Hello! This is server speaking.\n');
socket.end('SERVER: Closing connection now.\n');
}).on('error', (err) => {
console.error(err);
});
server.listen(26031, () => {
console.log('opened server on', server.address().port);
});
我遇到的错误:
与“wss://mydomain.in:26031/”的 WebSocket 连接失败:连接建立时出错:net::ERR_CONNECTION_TIMED_OUT
我在堆栈溢出中尝试了其他答案,但从我的 Angular 来看,一切似乎都很完美。服务器端口已打开以接受请求。还有什么可能是错误的?
最佳答案
仅当您安装了 SSL 时才使用“wss://” 或者尝试使用 ws://
您还可以尝试使用 Socket.IO 进行套接字连接。
关于javascript - WebSocket 连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59782115/