我正在构建一个具有节点和套接字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'
事件
如何实现这一目标?
是的,但套接字(socketid)只会发射到一个特定的套接字。假设房间里有3个客户,我想发送到客户1和客户3 – Ajey
那么好像你不想发射到发射的客户,就像客户2是发射插座,客户1和3是另外两个连接到同一个房间的套接字,如果是这样,那么你可以使用'socket.broadcast.to(socket.room).emit('user-added',{data:yourData});' –