【发布时间】:2016-03-21 13:00:38
【问题描述】:
Socket.io 不显示通过自己的 ip 发送的消息。 例如
var id = 333;
socket.broadcast.to(id).emit('user', user);
它运行良好,但消息仅在客户端 #333 中,但用户比发送消息,在消息客户端中没有副本。
我想这样解决,但是不行
socket.broadcast.to(socket.id).emit('user', user);
为什么?
【问题讨论】:
-
我不太了解您在这里要完成的工作。
socket.id是当前用户的套接字 id(不是 waaayyy)。你能详细说明一下这个问题吗? -
@SterlingArcher 我所有的用户都由 socket.id 标识,但消息只发给收件人,而不是发件人。
-
我不明白...你想发生什么?请添加一些您希望发生的输入和输出示例。
-
@Mathias socket.id = sender id 点击 USER 消息后直接转发给他,就像在 Facebook 上一样。问题是消息到达收件人但未显示在窗口发件人中。因此想将消息传递给 socket.id ,它是发送者的标识符。 Socket.io 不向 socket.id 传输消息
-
@Emerceen 您可以考虑为用户腾出一个房间,并使用“io.sockets.in(room).emit”,它将发送给房间内的所有人,包括发件人
标签: javascript socket.io