Socket.io - 发送到套接字id的数组

Tec*_*ech 3 node.js socket.io

我有每个连接用户的套接字ID存储在我的数据库中.当任何用户发布评论或状态时,我想使用存储在我的数据库中的套接字ID将其广播到他/她的所有连接.

我可以使用他/她的套接字ID通过使用io.sockets.connected [socket.id] .emit('privateMsg','你好!你好吗?')向个人客户端发送消息.

但是我如何向使用我的数据库中的select查询生成的socket id数组发出相同的内容.

Sab*_*san 5

你可以使用的概念rooms.每当套接字连接到达时,加入到房间的连接.断开连接后,从房间中取出插座.

socket.on('connection', function () {
     socket.join('room1');
});  

socket.on('disconnect', function () {
     socket.leave('room1');
});
Run Code Online (Sandbox Code Playgroud)

现在,当您想要将消息发送到房间中连接的套接字时,您可以将其广播到房间.

socket.broadcast.to('room1').emit('eventName', data);
Run Code Online (Sandbox Code Playgroud)