我正在开发一个iPhone应用程序和服务器之间SocketIO双向通信的应用程序。
一旦应用程序用户断开与应用程序的套接字连接,发现服务器端需要大约 30 秒才能检测到断开事件。
我遇到的麻烦是无法立即检测到服务器端的断开事件。
借用你的智慧。
io.sockets.on('连接', 函数 (套接字) {
socket.on('断开连接', function () {
//断开连接过程...
});
});
(服务器端) · NodeJS (v0.10.26) - Socket.io@1.3.6
(客户端) · Swift1.6 - SIOSocket · Xcode6.4
最佳答案
除非您使用 socket.disconnect()
显式关闭客户端的套接字,否则无法立即检测到断开连接。这里有进一步的解释:
https://stackoverflow.com/a/32009603/5169236
因此,如果您的应用程序只是失去互联网访问、被关闭并从内存中删除等,并且您没有显式关闭套接字,则无法立即检测到它。
关于ios - 我想在应用程序用户关闭套接字后立即检测断开连接事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32089796/