我正在尝试通过套接字的 ID 来访问它。我见过this和 this堆栈溢出帖子。然而,
io.sockets.connected[socket.id]
返回未定义。
这也不起作用:
io.to(socket.id).emit("myMessage");
Socket 连接到命名空间(socket.id 返回/playNS#1HhBtUM-6O_YsRwmAAAF),socket.io 版本为 1.4.5。我做错了什么?
最佳答案
如果套接字连接到命名空间,则 socket.id 的第一部分包含该命名空间(例如 /playNS#1HhBtUM-6O_YsRwmAAAF
),但 io.sockets.connected
该套接字的属性将是 /#1HhBtUM-6O_YsRwmAAAF
为了正确检索我使用的套接字 io.of('/namespace').connected[socket.id]
。
同样,io.of("/namespace").to(socket.id).emit("myMessage");
发送消息
关于node.js - Socket.io 通过 id 获取套接字不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36407645/