引用https://stackoverflow.com/questions/12246829/node-js-routing-data-with-socket-io
在客户端:
// send data on some event
socket.emit('send', { u: user_id, a: action, v: value });
我有 user_id,我可以添加 user_id 发件人
在服务器上:
socket.on('send', function (data) {
socket.broadcast.emit('request', { request: data });
});
现在数据已发送到监听端口的所有用户,但我希望只有 2 x 2 用户可以获取数据。
因此,用户 1 和 2 拥有“ channel ”,用户 3 和 4 拥有他们的“ channel ”。
最佳答案
您需要要发送请求的套接字的 ID (socket.id)。也许您需要一个包含 user_id 及其 socketID 的数组(您可以在用户输入时保存它)。然后,当您知道套接字 ID 时,您就可以仅向该套接字发送消息。
io.sockets.socket(socketID).emit('request', { request: data });
关于javascript - 通过node.js和socket.io向特定用户发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12261766/