Javascript 节点JS和socket.io-发送消息基础
我正在处理节点JS和socket.io,我有点迷路了。在下面的代码中,我将在创建时保存对套接字的引用,然后传输从控制台捕获的消息。一切都很好,但我觉得这不是正确的方法 你的想法Javascript 节点JS和socket.io-发送消息基础,javascript,sockets,node.js,Javascript,Sockets,Node.js,我正在处理节点JS和socket.io,我有点迷路了。在下面的代码中,我将在创建时保存对套接字的引用,然后传输从控制台捕获的消息。一切都很好,但我觉得这不是正确的方法 你的想法 var app = require('http').createServer(handler) , io = require('socket.io').listen(app) , fs = require('fs'); app.listen(80); function handler(req, res
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
, fs = require('fs');
app.listen(80);
function handler(req, res) {
fs.readFile('C:/node/index.html',
function (err, data) {
if (err) {
res.writeHead(500);
return res.end('Error loading index.html');
}
res.writeHead(200);
res.end(data);
});
}
var Sender = {
sockets:[],
sendMsg:function (msg) {
for (var i = 0; i < Sender.sockets.length; i++) {
Sender.sockets[i].emit('news', msg);
}
}
};
process.openStdin().addListener("data", function (text) {
Sender.sendMsg(text.toString());
});
io.sockets.on('connection', function (socket) {
//Saving reference
Sender.sockets.push(socket);
});
事实上,您可以删除发件人及其所有引用
process.openStdin().addListener("data", function (text) {
io.sockets.emit('news', text.toString())
});
这将向所有连接的客户端发送消息
这里有几个例子,我建议你看看