ホームページ  >  記事  >  ウェブフロントエンド  >  node.js_node.jsのsocket.ioのブロードキャストメッセージ

node.js_node.jsのsocket.ioのブロードキャストメッセージ

WBOY
WBOYオリジナル
2016-05-16 16:26:541481ブラウズ

複数のクライアントがサーバーとの接続を確立した後、socket.io() サーバーにはソケット属性があり、その属性値はクライアントとの接続を確立したすべてのソケット オブジェクトであり、send メソッドまたは Emit メソッドを使用できます。すべてのクライアントのブロードキャスト メッセージへのオブジェクトの。

io.sockets.send("ユーザー通信);

io.socket.emit("ログイン",names);

ケース

server.js コード:

コードをコピーします コードは次のとおりです:

varexpress=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
varserver=http.createServer(app);
app.get("/", function (req,res) {
res.sendfile(__dirname "/index.html");
});
server.listen(1337,"127.0.0.1", function () {
console.log("監視開始 1337");
});
var io=sio.listen(サーバー);
var names=[];
io.sockets.on("接続", 関数 (ソケット) {
ソケット.emit("ログイン",names);
socket.on("ログイン", 関数 (名前) {
names.push(名前);
io.sockets.emit("ログイン",names);
});
});

コードをコピーします コードは次のとおりです:






<スクリプト src="/socket.io/socket.io.js">
<スクリプト>
varソケット=io.connect();
ソケット.on("ログイン", 関数 (名前) {
var str="";
names.forEach(function(name){
str ="ユーザー" 名 "ログインしました。
";
});
document.getElementById("result").innerHTML=str;
});
関数 add(){
socket.emit("ログイン",document.getElementById("ニックネーム").value);
}



ニックネーム




実行結果:

Google Chrome にログインすると、Firefox でもまったく同じ結果が表示されます。

これは素晴らしい現象であり、私も非常に驚いている効果です。

とても素晴らしいノードです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。