【发布时间】:2014-06-19 14:20:36
【问题描述】:
嘿,我正在查看 socket.io,我想知道即使在断开连接后 socket.id 是否仍然存在?我认为没有人有任何断开连接和会话管理的经验吗?
我正在考虑使用 socket.id 作为访问用户会话状态的主键。虽然我担心它不会与断开连接的用户关联,从而在服务器端留下孤立的用户。
【问题讨论】:
标签: ios node.js sockets session socket.io
嘿,我正在查看 socket.io,我想知道即使在断开连接后 socket.id 是否仍然存在?我认为没有人有任何断开连接和会话管理的经验吗?
我正在考虑使用 socket.id 作为访问用户会话状态的主键。虽然我担心它不会与断开连接的用户关联,从而在服务器端留下孤立的用户。
【问题讨论】:
标签: ios node.js sockets session socket.io
Socket.io 在断开连接后发出disconnect 事件。所以当断开连接事件被触发时,你可以清除用户的会话。
服务器
io.sockets.on('connection', function(socket) {
socket.on('disconnect', function(data) {
console.log('socket '+ socket.id + 'disconnected!');
//delete the users socket here with socket.id
});
});
这个答案(https://stackoverflow.com/a/17311682/453486) 有助于用户的连接和断开
【讨论】: