【发布时间】:2014-09-18 02:50:13
【问题描述】:
我使用的是 socket.io 版本 1,但遇到以下问题。
我有一个应用程序,用户可以在其中连接到不同的房间。在断开连接事件时,我希望该用户通知他离开了他连接的房间。 (我知道在断开连接时用户会自动离开所有房间,但我想通知其他人用户离开了他们。)
我查看了this list 并没有找到一种简单的方法来做我想做的事。可能有更好的方法来做到这一点,但目前我的解决方案是找到所有房间并循环发送给每个房间的所有人。但是io.sockets.manager 和适配器都不能给我一个客户端连接的房间列表。
client.on('disconnect', function() {
// io.sockets.manager.roomClients[client.id];
// io.sockets.adapter.roomClients[client.id];
});
P.S. 看到一个错误的答案,我想澄清一下。我知道如何向房间里的人发送消息。我想解决另一个问题。如果用户输入Room1、Room2、...、RoomN 然后断开连接,我想向这些N 房间中的所有人发送消息。
【问题讨论】: