如题,nodejs如何推送消息到客户端。或者,如果要做一个站内消息,如何实现信息的及时通信?
了解下 WebSocket
协议及socket.io。nodejs和socket.io是不错的组合,对于不支持 WebSocket
协议的也做了轮询的fallback,使用很简单(来自于socket.io官网):
后端:
var io = require('socket.io').listen(80); io.sockets.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my other event', function (data) { console.log(data); }); });
前端:
<script src="/socket.io/socket.io.js"></script> <script> var socket = io.connect('http://localhost'); socket.on('news', function (data) { console.log(data); socket.emit('my other event', { my: 'data' }); }); </script>
我最近发现一个专业做web实时推送的,叫Goeasy,我试了一下,中英文都很齐全,服务器稳定,代码也简洁易懂,几分钟自己可以写一个demo,大家可以试一下,网站是https://goeasy.io/