通过websocket,服务器可以主动给客户端发消息,并且不需要每次都http请求一下,下面是我写的一个简单小程序;
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http); app.get('/', function(req, res){ res.send('Welcome Realtime Server
');
}); io.on('connection', function(socket){ console.log('a user connected');//连接后定时发送信息 setInterval(function(){io.emit('message', "正在连接");},2000); //监听用户发布聊天内容 socket.on('message', function(obj){ //向所有客户端广播发布的消息 io.emit('message', obj); console.log(obj.username+'说:'+obj.content); }); }); http.listen(3000, function(){ console.log('listening on *:3000');
});
运行结果如下图:网页端后台一直输出消息