列出所有连接到Socket.io版本> 1的房间的客户端
io.sockets.clients()方法从更高版本的Socket.io中折旧后,我的研究在socket.io官方web上找不到任何文档。
此外,它给客户()方法的types错误如下:
TypeError: undefined不是一个函数
有没有人想出了如何使用更高版本的Socket.io在一个房间里列出所有连接的客户端?
要获得连接到房间的客户端的套接字ID,请使用以下代码:
var namespace = '/'; var roomName = 'my_room_name'; for (var socketId in io.nsps[namespace].adapter.rooms[roomName]) { console.log(socketId); }
编辑:
要通过套接字ID获取套接字,您可以试试这个:
var socket = io.sockets.connected[socketId];
在Socket.IO 1.4中
获取所有连接用户的数组:
// io.sockets.connected returns an Object with socketId as its key var allConnectedClients = Object.keys(io.sockets.connected);// This will return the array of SockeId of all the connected clients
为了得到所有客户的伯爵:
var clientsCount = io.engine.clientsCount ; // This will return the count of connected clients