【发布时间】:2016-01-30 08:07:03
【问题描述】:
服务器如何知道客户端在 SocketIO 中突然由于网络/电源故障而死/断开。由于客户端没有机会向服务器发出断开连接事件......有什么办法可以解决这个问题?
【问题讨论】:
-
socket.io 超时并将引发断开连接事件:stackoverflow.com/questions/26025628/…
标签: javascript node.js socket.io
服务器如何知道客户端在 SocketIO 中突然由于网络/电源故障而死/断开。由于客户端没有机会向服务器发出断开连接事件......有什么办法可以解决这个问题?
【问题讨论】:
标签: javascript node.js socket.io
Socket.io 有一个内部保持活动机制。如果客户端突然断开连接,服务器不会立即知道它。相反,当下一个保持活动机制事件将触发并且在时间限制内没有响应到达时,服务器将为该客户端触发断开事件。服务器检测客户端断开连接所需的时间受保活轮询间隔和超时限制的影响。
您可以使用“pingInterval”和“pingTimeout”更改这些值,这将改变engine.io 的配置方式。
【讨论】: