Spots

SSE项目`nexus-sse`持续优化,不一样的视觉效果

关注我的公众号:【编程朝花夕拾】,可获取首发内容。 关注我的公众号:【编程朝花夕拾】,可获取首发内容。 这两天有空,就持续优化stream-nexus / nexus-sse项目,并增加了websocket的集成。这一期聊聊都改了什么? clientId 由浏览器 crypto.randomUUID() 生成,写进 URL,整条链路都靠它: 心跳应答:POST /sse/pong?clientId=xxx`,服务端靠它定位该给哪条连接续命 定向推送:{"clientIds":["xxx"]},推送给指定连接 运维台账:连接列表展示、DELETE /sse/admin/connections/{clientId} 踢下线 最大的问题就是客户端的伪造。客户端自带 ID,等于「客户端可以声明自己是谁」。如果一个客户端使用了其他人的客户端,那么明明是两个客户端,统计数据只会显示一条。 既然刷新页面就会生成新的客户端,为什么不交给服务端维护呢,参数减少使用起来门槛就会降低。 nexus-sse项目没有去解决同源浏览器6个限制,nexus-websocket可以弥补。 nexus-websocket打算通过两个方式实现推送: 无论SSE还是Websocket其实都属于模板代码,一次搭建之后,后续直接使用,时间长了可能都记得里面都有什么东西。此项目整理了自己之前业务中碰到的问题,并在项目中得到了解决。

News

SSE项目`nexus-sse`持续优化,不一样的视觉效果

关注我的公众号:【编程朝花夕拾】,可获取首发内容。 关注我的公众号:【编程朝花夕拾】,可获取首发内容。 这两天有空,就持续优化stream-nexus / nexus-sse项目,并增加了websocket的集成。这一期聊聊都改了什么? clientId 由浏览器 crypto.randomUUID() 生成,写进 URL,整条链路都靠它: 心跳应答:POST…

@spots
Source: Juejin
See more like this