是否可以使用自定义的socket.id ??向具有不同命名空间的套接字发送消息。我正在使用socket.io来创建聊天并发送私人消息。
我成功地设法创建了一个房间并使用
私下发送消息io.to(room).emit('chatMessage', from, message);
但我还想使用他们的ID向不同名称空间的套接字发送消息,如:
io.of('nameSpace').to(socket.id).emit('chatMessage', from, message);
我尝试了不同的组合,例如,
io.of('nameSpace').to(socket.id).emit('chatMessage', from, message);
io.of('nameSpace).sockets.socket(socket.id).emit('chatMessage', from, message);
io.to(users[socketid]).emit('chatMessage', from, message);
io.sockets.socket(socketid).emit('chatMessage', from, message);
但它不起作用。是否有其他方法将消息发送到具有不同命名空间的特定客户端?我正在使用房间和命名空间的组合。
注意:我使用的字符串查询等于用户名称作为我的房间名称。
答案 0 :(得分:1)
此解决方案适用于多个名称空间 假设我们有两个名称空间:
从namespace-1向namespace-2发送消息的语法是
io.of('/v2').to('/v2#LOchCx6DZ8YwPVF8AAAv').emit('message', 'Hello');