我在node.js中有一个服务器和客户端。客户端正在使用socket.io-client,服务器正在使用socket.io。我有一个要求,即客户端计算机的重新启动需要在服务器上触发断开连接事件。我们看到了这种脱节,但它发生在几分钟之后。我希望它立竿见影。任何想法如何做到这一点?
由于
答案 0 :(得分:1)
服务器向每个客户发出称为heartbeats
的内容
客户端直接响应心跳,这样服务器就知道客户端仍在运行。
(ping / pong)
阅读socket.io
doc您获得以下可能感兴趣的选项,以检测连接被关闭:
pingTimeout (Number): how many ms without a pong packet to consider the connection closed (60000)
pingInterval (Number): how many ms before sending a new ping packet (25000)
来源:
https://github.com/socketio/socket.io#serveroptsobject
https://github.com/socketio/engine.io#methods-1