socket.io获取已加入某个房间的套接字列表

时间:2020-04-12 21:26:54

标签: javascript sockets websocket socket.io

我正在使用2.3.0版,我想获得已加入某个房间的套接字对象的列表。现在我知道过去有很多类似的问题,根据我的收集,下面的代码可用于获取给定房间中套接字ID的列表(如果我错了,请纠正我):

io.of('/').in('room_name').clients((error, clients) => {
  if (error) throw error;
  // Returns an array of client IDs like ["Anw2LatarvGVVXEIAAAD"]
  console.log(clients); 
});

从这些客户端ID看来,我可以使用io.of('/').in('room_name').connected[id]来获取实际的套接字对象?

我不明白的是,io.of('/').in('room_name').connected实际包含什么? documentation并不是很清楚,因为似乎暗示它是连接到该房间的套接字对象的映射。但是,如果是这种情况,我是否不能像这样简单地获取套接字对象的列表:

const sockets = Object.values(io.of('/').in('room_name').connected)

过去,对此有很多疑问(针对example),但似乎都没有人提及。 connected实际没有包含我认为的内容吗?还是仅在使用多个Socket.IO节点时才有意义?

0 个答案:

没有答案
相关问题