【发布时间】:2011-08-19 16:10:19
【问题描述】:
在套接字 io 服务器上,我有类似的东西:
io.sockets.on('connection',function(client) {
console.log(client.id + ' connected at '+(new Date()).getTime());
client.on('disconnect',function() {
console.log(client.id + ' DISCONNECTED at '+(new Date()).getTime());
});
});
而我的问题是发生了这种情况:
debug - client authorized
info - handshake authorized 15229479751557595508
debug - setting request GET /socket.io/1/websocket/15229479751557595508
debug - set heartbeat interval for client 15229479751557595508
debug - client authorized for
debug - websocket writing 1::
15229479751557595508 connected at 1313769716321
debug - websocket received data packet 5:::{"name":"estimatepp","args":[9]}
debug - websocket received data packet 5:::{"name":"ready","args":[null]}
info - transport end
debug - set close timeout for client 15229479751557595508
debug - cleared close timeout for client 15229479751557595508
debug - cleared heartbeat interval for client 15229479751557595508
15229479751557595508 DISCONNECTED at 1313769716454
debug - discarding transport
我不知道这是否正常,但如您所见,客户端 15229479751557595508 在 1313769716321 连接并在 1313769716454 断开连接,仅在 133 毫秒后(此数字始终为 132 或 133 )。我不是在命令客户端在某事后断开连接。
关于为什么会发生这种情况的任何想法?
我还有一个疑问。如果我在 io.sockets.on 上监听连接事件,我不应该在那里监听断开事件吗?除了那里没有客户...
监听断开连接的正确方法是什么?
感谢您的帮助。
编辑:您可以忽略这些行
debug - websocket received data packet 5:::{"name":"estimatepp","args":[9]}
debug - websocket received data packet 5:::{"name":"ready","args":[null]}
这是我正在进行的项目的一部分。也许事情是它只是接收这些事件,然后因为有一段时间没有活动它关闭了连接?但这不是想要的行为吗?
【问题讨论】:
标签: node.js websocket socket.io