node-SSE简单实现

  |  

服务器发送事件(Server-sent Events)是基于 WebSocket 协议的一种服务器向客户端发送事件和数据的单向通讯。

兼容性: 所有主流浏览器均支持服务器发送事件,除了 Internet Explorer。

EventSource用于接收服务器发送事件通知。

ie浏览器不兼容 EventSource对象 采用第三方插件 github EVentSource

nodejs下代码实现

var http = require("http")
var SSE = require("sse")
var server = http.createServer().listen(3000, ()=>{console.log('server is running')})

var sse = new SSE(server, {path: '/test', verifyRequest: () =>{return true}})

sse.on('connection', (client)=>{
// client为当前连接的对象。。 sse里面包含有所有的连接对象
client.on('close',() =>{}); // 关闭事件
client.send("hello world!") // 发送内容
setInterval(()=>{client.send()},2000) // 定时发送内容
})

客户端接收信息

var Events = new EventSource('http://localhost:3000/test')
Events.onmessage = function(event){
console.log(event.data)
}

×

纯属好玩

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
,