我正在使用 javascript websocket 并希望它使用代码 1006 重新连接 onclose。 我遇到了这个
Reconnection of Client when server reboots in WebSocket
那里接受的答案确实有效,但 20 秒后,当服务器重新连接时,尝试连接的次数增加到 4,用户收到 4 条消息,实际上只发送了一次。
20 秒只是一个数字,连接丢失可能是服务器端问题或客户端互联网问题。
我希望我已经清楚地描述了这个问题 问候, 希亚姆
最佳答案
您可以查看关闭事件错误代码并重新连接
var ws = null; //reserve it for websocket
function connectWebsocket(){
if ("WebSocket" in window) //browser supports webscokets
{
ws = new WebSocket("ws://your_url");
ws.addEventListener("open", socketOpened);
ws.addEventListener("message", messageRecived);
ws.addEventListener("close", socketClosed);
}else // browser doesn't support chat..
{
alert("Websockets not supported by browser ");
}
};
function socketClosed(evt){
switch(evt.code){
case 1006:
setTimeout(connectWebsocket,1000); //try to reconnect in 1s
break;
}
};
关于javascript - websocket 在关闭时重新连接,代码为 1006,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38591817/