对于socket.io版本> = 1.0:
请注意,房间成为具有.length1.4属性的实际类型,因此1.4.x方法从现在开始应该是稳定的。当然,禁止对该类型的API进行重大更改。
计算所有连接到的客户端’my_room’:
1.4+:
var room = io.sockets.adapter.rooms['my_room'];
room.length;
1.3.x:
var room = io.sockets.adapter.rooms['my_room'];
Object.keys(room).length;
1.0.x至1.2.x:
var room = io.adapter.rooms['my_room'];
Object.keys(room).length;
这是假设您在单个节点(而不是集群)上使用默认的Room适配器运行。如果您在集群中,事情会更加复杂。
其他相关示例:
计算连接到服务器的所有客户端:
var srvSockets = io.sockets.sockets;
Object.keys(srvSockets).length;
var nspSockets = io.of('/chat').sockets;
Object.keys(nspSockets).length