Javascript 如何在客户端套接字超时后重新建立事件
我看到socket.io似乎在不活动后关闭,它会自动断开并再次连接,但不会使用我最初在componentdidmount中连接时建立的回调。由于超时导致的断开连接没有使用我在componenet中为断开连接事件定义的回调。插座的断开和重新连接似乎也不被视为重新连接事件。在断开与非活动的连接后,有没有关于如何重新订阅连接时所需的事件的建议Javascript 如何在客户端套接字超时后重新建立事件,javascript,reactjs,socket.io,Javascript,Reactjs,Socket.io,我看到socket.io似乎在不活动后关闭,它会自动断开并再次连接,但不会使用我最初在componentdidmount中连接时建立的回调。由于超时导致的断开连接没有使用我在componenet中为断开连接事件定义的回调。插座的断开和重新连接似乎也不被视为重新连接事件。在断开与非活动的连接后,有没有关于如何重新订阅连接时所需的事件的建议 componentDidMount() { Socket.on("connect", ()=>{ console.log("
componentDidMount() {
Socket.on("connect", ()=>{
console.log("***Successful connection to id ***");
Socket.emit('subscribe_to_presence',{domain: 'example'});
Socket.on('presence_status_update',
(data)=>{
console.log("User Data", data);
}
);
Socket.on('info',(info)=>{
console.log("Info",info);
console.log("Socket is connected?", Socket.socket.connected);
});
});
Socket.on("connect_error", (error)=>{
console.log("connect error was due to ", error);
})
Socket.on("error", (error)=>{
console.log("General error was due to ", error);
})
Socket.on("connection_timeout", ()=>{
console.log("Connection timeout");
})
Socket.on('disconnect', (reason)=>{
console.log("Reason for disconnect", reason);
})
}
当使用socket保持连接打开时,我们会进行ping/pong,这会告诉对方它们仍然在那里。要关闭连接,发送一个简单的“关闭连接”数据包。 我们可以找到一个很好的例子