Maison > interface Web > js tutoriel > le corps du texte

Comment exclure l'expéditeur des diffusions Socket.IO ?

Barbara Streisand
Libérer: 2024-10-31 02:02:29
original
231 Les gens l'ont consulté

How to Exclude the Sender from Socket.IO Broadcasts?

Envoi d'une réponse à tous les clients sauf l'expéditeur

Pour diffuser un message à tous les clients connectés, la fonction io.sockets.emit() est utilisé. Cependant, lorsque vous souhaitez exclure l'expéditeur de la réception de la diffusion, vous pouvez vous interroger sur une approche plus simple que de vérifier l'ID de l'expéditeur côté client.

Dans Socket.IO, la propriété socket.broadcast fournit une solution pour ce scénario. En utilisant socket.broadcast.emit(), vous pouvez envoyer un message à tous les clients sauf l'expéditeur. Voici un exemple :

<code class="javascript">socket.on('cursor', function(data) {
  socket.broadcast.emit('response', data);
});</code>
Copier après la connexion

Dans cet exemple, lorsqu'un client envoie un événement « curseur », le serveur diffuse les données reçues à tous les autres clients connectés, à l'exclusion de l'expéditeur.

Voici un résumé des fonctions d'émission de Socket.IO pour votre référence :

  • socket.emit() : envoie un message au client expéditeur uniquement.
  • io.emit() : envoie un message un message à tous les clients, y compris l'expéditeur.
  • socket.broadcast.emit() : envoie un message à tous les clients sauf l'expéditeur.
  • socket.broadcast.to() : envoie un message à tous les clients dans une salle ou un canal spécifique, à l'exception de l'expéditeur.
  • socket.to() : envoie un message au client expéditeur, uniquement s'il se trouve dans une salle ou un canal spécifique.
  • io.in() : envoie un message à tous les clients dans une salle ou un canal spécifique, y compris l'expéditeur.
  • socket.broadcast.to(socketid) : envoie un message à un identifiant client spécifique.
  • io.of() : envoie un message à tous les clients dans un espace de noms spécifique, y compris l'expéditeur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!