Javascript 使用node.js上的socket.io向所有套接字发送不同的数据

Javascript 使用node.js上的socket.io向所有套接字发送不同的数据,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,您好,这会向所有套接字发送数据,但每个套接字都会获得相同的数据,我是否可以向所有套接字发送数据,但为每个套接字提供不同的数据?据我所知,这是不可能的。这将取决于你真正想做什么(以及如何做)。作为替代方案,我想到的第一件事是通过socket.id识别您的用户,然后将相应的数据发送给他们 例如: io.sockets.emit('data', data); 您可以循环访问所有连接的客户端,并向它们发送不同的数据。通过执行io.sockets.clients(),可以找到客户机列表谢谢你没想到,现在

您好,这会向所有套接字发送数据,但每个套接字都会获得相同的数据,我是否可以向所有套接字发送数据,但为每个套接字提供不同的数据?

据我所知,这是不可能的。这将取决于你真正想做什么(以及如何做)。作为替代方案,我想到的第一件事是通过
socket.id
识别您的用户,然后将相应的数据发送给他们

例如:

io.sockets.emit('data', data);

您可以循环访问所有连接的客户端,并向它们发送不同的数据。通过执行
io.sockets.clients(),可以找到客户机列表谢谢你没想到,现在的答案很明显。你应该发布你的答案,这样我就可以接受了。我想发送一些随机数据,所以io.sockets.clients()forEach正好达到了它的目的,但是如果我想发送目标数据,这可能就达到了它的目的。看到那个房东没有发表自己的答案,我就接受这个。
io.sockets.clients().forEach(function (socket) {
    if(socket.id == 1337) data = {test: "test1"};
    if(socket.id == 404) data = {test: "test2"};

    socket.emit('data',data);
});