socket.io – io.sockets.adapter对象?

我正在尝试使用socket.io并尝试构build一个多房间聊天应用程序。 我遵循的指南已过时使用前1.0.0套接字。

我试图find一个给定的房间连接的客户端列表。 谷歌search显示,我必须使用适配器。 但是,我找不到任何地方的文档。 我在git-hub文档中search它,但search没有返回适配器上的任何信息。 https://github.com/socketio/socket.io-client/blob/master/docs/API.md

有人能指出我正确的方向,在哪里我可以阅读更多关于适配器和相关的方法吗? 另外,如果你可以提供最新的socket.io文件,我将不胜感激。 谢谢。

您可以像这样在顶级命名空间中获得所有房间的地图:

 io.nsps['/'].adapter.rooms 

你可以在这些房间的其中一个列出sockets:

 function getSocketsInRoom(room, namespace = '/') { let room = io.nsps[namespace].adapter.rooms[room]; return room.sockets; } 

尽我所知,这种东西根本没有logging。 我只是通过检查debugging器中存储的东西来发现这样的事情。 这可能会也可能不会意味着将来会有所改变 – 我真的不知道。