Heim  >  Artikel  >  Web-Frontend  >  Broadcast-Nachricht von socket.io in node.js_node.js

Broadcast-Nachricht von socket.io in node.js_node.js

WBOY
WBOYOriginal
2016-05-16 16:26:541484Durchsuche

Nachdem mehrere Clients eine Verbindung mit dem Server hergestellt haben, verfügt der socket.io()-Server über ein Sockets-Attribut, und der Attributwert besteht aus allen Socket-Objekten, die eine Verbindung mit dem Client hergestellt haben. Sie können die Sendemethode oder die Emit-Methode verwenden des Objekts an alle Clients Broadcast-Nachrichten.

io.sockets.send("Benutzer hat mitgeteilt);

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

Fall

server.js-Code:

Code kopieren Der Code lautet wie folgt:

var express=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
var server=http.createServer(app);
app.get("/", Funktion (req,res) {
res.sendfile(__dirname "/index.html");
});
server.listen(1337,"127.0.0.1", function () {
console.log("Überwachung starten 1337");
});
var io=sio.listen(server);
var-Namen=[];
io.sockets.on("connection", Funktion (Socket) {
​ socket.emit("login",names);
socket.on("login", Funktion (Name) {
Namen.push(Name);
​​​​ io.sockets.emit("login",names);
});
});

Code kopieren Der Code lautet wie folgt:







<script><br>          var socket=io.connect();<br> socket.on("login", Funktion (Namen) {<br>           var str="";<br>              Namen.forEach(Funktion(Name){<br>                        str ="Benutzername" "Angemeldet.<br/>";<br>             });<br>                 document.getElementById("result").innerHTML=str;<br>         });<br>          Funktion add(){<br> ​​​​​ socket.emit("login",document.getElementById("nickname").value);<br> }<br> </script>


Spitzname




Laufergebnisse:

Wenn Sie sich in Google Chrome anmelden, können Sie in Firefox genau die gleichen Ergebnisse sehen.

Das ist ein wunderbares Phänomen und ein Effekt, der mich sehr überrascht.

So ein wundervoller Knoten.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn