Node.js était quelque chose qui m'intéressait vraiment depuis longtemps et je l'ai utilisé dans un de mes projets pour créer un jeu multijoueur.
io.sockets.in().emit()
y socket.broadcast.to().emit()
sont les deux principales méthodes d'émission que nous utilisons dans les chambres de Socket.io ( https://github.com/LearnBoost/socket.io/wiki/Rooms ) Les chambres permettent un partitionnement simple des clients connectés. Cela permet d'émettre des événements pour des sous-ensembles de la liste des clients connectés et offre une méthode simple pour les gérer.
Ils nous permettent de gérer les sous-ensembles de la liste des clients connectés (que nous appelons des salles) et ont les mêmes fonctionnalités que les fonctions principales de socket.io. io.sockets.emit()
y socket.broadcast.emit()
.
Quoi qu'il en soit, je vais essayer de donner les codes d'exemple avec les commentaires pour expliquer. Voyons si cela peut aider ;
Socket.io Rooms
i) io.sockets.in().emit() ;
/* Send message to the room1. It broadcasts the data to all
the socket clients which are connected to the room1 */
io.sockets.in('room1').emit('function', {foo:bar});
ii) socket.broadcast.to().emit() ;
io.sockets.on('connection', function (socket) {
socket.on('function', function(data){
/* Broadcast to room1 except the sender. In other word,
It broadcast all the socket clients which are connected
to the room1 except the sender */
socket.broadcast.to('room1').emit('function', {foo:bar});
}
}
Socket.io
i) io.sockets.emit() ;
/* Send message to all. It broadcasts the data to all
the socket clients which are connected to the server; */
io.sockets.emit('function', {foo:bar});
ii) socket.broadcast.emit() ;
io.sockets.on('connection', function (socket) {
socket.on('function', function(data){
// Broadcast to all the socket clients except the sender
socket.broadcast.emit('function', {foo:bar});
}
}
Cheers
19 votes
Upvote pour l'exemple de données
0 votes
stackoverflow.com/questions/52646273/