Maison  >  Article  >  interface Web  >  Message de diffusion de socket.io dans node.js_node.js

Message de diffusion de socket.io dans node.js_node.js

WBOY
WBOYoriginal
2016-05-16 16:26:541481parcourir

Une fois que plusieurs clients ont établi des connexions avec le serveur, le serveur socket.io() a un attribut sockets et la valeur de l'attribut correspond à tous les objets socket qui ont établi des connexions avec le client. Vous pouvez utiliser la méthode d'envoi ou la méthode d'émission. de l'objet à tous les clients diffusent des messages.

io.sockets.send("utilisateur communiqué);

io.socket.emit("login",names);

Cas

code serveur.js :

Copier le code Le code est le suivant :

var express=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
var server=http.createServer(app);
app.get("/", function (req,res) {
res.sendfile(__dirname "/index.html");
});
serveur.écouter(1337,"127.0.0.1", fonction () {
console.log("Démarrer la surveillance 1337");
});
var io=sio.listen(server);
var noms=[];
io.sockets.on("connexion", fonction (socket) {
​ socket.emit("login",noms);
socket.on("login", fonction (nom) {
noms.push(nom);
​​​​ io.sockets.emit("login",noms);
});
});

Copier le code Le code est le suivant :







<script><br>          var socket=io.connect();<br> socket.on("login", fonction (noms) {<br>           var str="";<br>              noms.forEach(fonction(nom){<br>                         str ="Nom de l'utilisateur" "Connecté.<br/>";<br>             });<br>                document.getElementById("result").innerHTML=str;<br>         });<br>          fonction add(){<br> ​​​​​ socket.emit("login",document.getElementById("nickname").value);<br> ><br> </script>


Pseudo




Exécuter les résultats :

Lorsque vous vous connectez à Google Chrome, vous pouvez voir exactement les mêmes résultats dans Firefox.

C'est un phénomène merveilleux et un effet qui me surprend grandement.

Un nœud si merveilleux.

Déclaration:
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