我正在使用 Node 和套接字 io 构建实时应用程序。
我的问题是:
在我的客户端,我有
socket.emit('adduser', username);
在我的服务器端我有
socket.on('adduser', function(username) {
io.sockets.in(socket.room).socket.emit('user-added', somedata);
}
现在再次来到客户端,我有一个用户添加的监听器
socket.on('user-added', function(somedata) {
// get shit done!
}
现在假设我连接了 3 个客户端,并且它们都共享相同的脚本。
根据我对套接字io的理解,当我说io.sockets.in(socket.room).socket.emit
时该事件将发送给特定房间中所有连接的客户端。
举例来说,我只希望客户端 1 和客户端 3 收听此 'user-added'
事件
如何实现这一目标?
最佳答案
如果您不想向同一房间中的所有用户发送信息,那么您可以使用以下命令根据其 ID 向特定客户端发送信息。
io.sockets.socket(socketid).emit('user-added', {data: yourData});
关于node.js - 仅向房间中的一组客户端发出套接字事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21332395/