После того, как несколько клиентов установили подключения с сервером, сервер Socket.io () имеет атрибут сокетов, а значение атрибута - все объекты сокета, которые устанавливают соединения с клиентом. Вы можете использовать метод отправки или излучать метод объекта для трансляции сообщений всем клиентам.
io.sockets.send («Пользователь редактировал);
io.socket.emit ("login", names);
Случай
Код server.js:
Кода -копия выглядит следующим образом:
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");
});
server.listen (1337, "127.0.0.1", function () {
console.log ("Начните слушать 1337");
});
var io = sio.listen (сервер);
var names = [];
io.sockets.on ("connection", function (ocket) {
socket.emit ("login", names);
Socket.on ("login", function (name) {
names.push (имя);
io.sockets.emit ("login", names);
});
});
Кода -копия выглядит следующим образом:
<! Doctype html>
<html>
<head lang = "en">
<meta charset = "utf-8">
<title> </title>
<script src = "/socket.io/socket.io.js"> </script>
<Скрипт>
var socket = io.connect ();
Socket.on ("login", function (names) {
var str = "";
names.foreach (function (name) {
str+= "user"+name+"login. <br/>";
});
document.getElementbyId ("result"). innerHtml = str;
});
функция add () {
socket.emit ("login", document.getElementById ("Псевдом"). Значение);
}
</script>
</head>
<тело>
Прозвище <input type = "text" id = "lickname" />
<div id = "result"> </div>
<input type = "button" onclick = "add ()" value = "login" />
</body>
</html>
Результаты работы:
Войдите в Google Chrome, и вы можете увидеть те же результаты в Firefox.
Это замечательное явление и эффект, который меня очень удивил.
Такой замечательный узел.