Socket.io会话管理?

时间:2014-05-02 19:54:07

标签: ios node.js sockets session socket.io

嘿,我正在看socket.io,我想知道socket.id是否在连接断开后仍然存在?我认为没有人有任何关于断开连接和会话管理的经验吗?

我在考虑使用socket.id作为访问用户会话状态的主键。虽然我担心它在断开连接时没有与用户关联,而是在服务器端留下孤立用户。

1 个答案:

答案 0 :(得分:0)

断开连接后,

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)有助于连接和断开用户