NodeJS Websocket如何在服务器重新启动时重新连接

2024-04-16

在 Node.js 中我使用网络套接字/ws https://github.com/websockets/ws用于 WebSocket 连接。以下是客户端的代码。假设我们正在连接的服务器套接字宕机了一分钟。 close 事件将会触发,但是每当服务器上的套接字出现故障或出现错误时,重新连接到套接字的最佳方法是什么?

var ws = new WebSocket('ws://localhost');

ws.on('open', function() {
    console.log('socket open');
});
ws.on('error', function() {
    console.log('socket error');
    // how do I reconnect to the ws after x minutes here?
});
ws.on('close', function() {
    console.log('socket close');
    // how do I reconnect to the ws after x minutes here?
});

尝试这个:

var reconnectInterval = x * 1000 * 60;
var ws;
var connect = function(){
    ws = new WebSocket('ws://localhost');
    ws.on('open', function() {
        console.log('socket open');
    });
    ws.on('error', function() {
        console.log('socket error');
    });
    ws.on('close', function() {
        console.log('socket close');
        setTimeout(connect, reconnectInterval);
    });
};
connect();

您可以使用原始实现而无需包装它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NodeJS Websocket如何在服务器重新启动时重新连接 的相关文章

随机推荐