我需要能够检测用户何时失去与套接字的连接,当我关闭笔记本电脑时似乎没有调用 socket.on("disconnect")
,因此它不会运行需要运行以更新数据库以将用户标记为脱机的 ajax 调用。如何检查连接是否已关闭或其他?
最佳答案
正如这里提到的 https://github.com/LearnBoost/Socket.IO/wiki/Configuring-Socket.IO , Socket.IO 有它自己的心跳实现。 但默认值是 25 秒的间隔和 60 秒的连接丢失阈值。
所以我的建议是:按照您对测试的期望设置默认值。否则你可能会错过阈值。
例子:
socket.set("heartbeat timeout", 10);
socket.set("heartbeat interval", 5);
关于javascript - Socket IO 检测客户端何时失去连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9182695/