Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 向socketio中的特定客户端组发送消息_Javascript_Node.js_Websocket_Socket.io - Fatal编程技术网

Javascript 向socketio中的特定客户端组发送消息

Javascript 向socketio中的特定客户端组发送消息,javascript,node.js,websocket,socket.io,Javascript,Node.js,Websocket,Socket.io,通过socket io向一组用户(例如,仅向特定聊天室中的用户而非所有用户)发送消息的最佳方式是什么 我知道,但是socketio version.7最近发布了,似乎有一种更优雅的方式使用新api,即使用get/set或名称空间?我认为您应该查看房间概念: 房间 有时,您希望在同一个房间中放置某些插座,以便可以轻松地向所有插座一起广播 将其视为套接字的内置通道。插座连接并离开每个插座中的房间 服务器端: var io = require('socket.io').listen(80); io.

通过socket io向一组用户(例如,仅向特定聊天室中的用户而非所有用户)发送消息的最佳方式是什么


我知道,但是socketio version.7最近发布了,似乎有一种更优雅的方式使用新api,即使用get/set或名称空间?

我认为您应该查看房间概念:

房间 有时,您希望在同一个房间中放置某些插座,以便可以轻松地向所有插座一起广播

将其视为套接字的内置通道。插座连接并离开每个插座中的房间

服务器端:

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.join('justin bieber fans');
  socket.broadcast.to('justin bieber fans').emit('new fan');
  io.sockets.in('rammstein fans').emit('new non-fan');
});

我认为您应该查阅房间概念:

房间 有时,您希望在同一个房间中放置某些插座,以便可以轻松地向所有插座一起广播

将其视为套接字的内置通道。插座连接并离开每个插座中的房间

服务器端:

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.join('justin bieber fans');
  socket.broadcast.to('justin bieber fans').emit('new fan');
  io.sockets.in('rammstein fans').emit('new non-fan');
});

在这个例子中,每个人都是贾斯汀·比伯粉丝房间的成员。假设客户机在连接时发送了一个他们所属的组ID,可以简单地创建一个房间,并使用一个变量发送到一个房间,如“
group${groupID}
”?在本例中,每个人都将是
justin bieber fans
房间的成员。假设客户机在连接时发送了一个他们是其中一员的组ID,可以简单地创建一个房间,并使用一个变量向房间发送,比如“
group${groupID}
”?