118 votes

Quelle est la différence entre io.sockets.emit et broadcast ?

Quelle est la différence entre io.sockets.emit et socket.broadcast.emit ? Est-ce seulement que le broadcast émet à tout le monde MAIS au socket qui l'envoie ?

Il semble qu'ils puissent être utilisés de manière interchangeable :

io.sockets.on('connection', function (socket) {
  //these should do the same thing  
  io.sockets.emit('this', { receivers: 'everyone'});

  socket.broadcast.emit('this', { receivers: 'everyone but socket'}); //emits to everyone but socket
  socket.emit('this', { receivers: 'socket'}); //emits to socket
});

203voto

Jayantha Points 11282

io.sockets.emit sera envoyé à tous les clients

socket.broadcast.emit enverra le message à tous les autres clients, sauf à la connexion nouvellement créée.

52voto

Karthic Rao Points 379

socket.broadcast.emit() se comporte de la même manière que io.sockets.emit mais au lieu de mais au lieu d'émettre vers toutes les sockets connectées, elle émettra vers toutes les sauf celle sur laquelle il est appelé. Donc dans ce cas, la socket référencée par socket ne recevront pas l'événement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X