如何设置Websocket与客户端和服务器发送事件服务器通信

How to set Websocket to communicate with a client and a server-sent-events server?

本文关键字:服务器 通信 事件 客户端 何设置 设置 Websocket      更新时间:2023-09-26

我需要在浏览器和REST API服务之间建立一个双向通信。

我面临的最复杂的事情之一是每秒钟检查API的更新。

我有两种交流方式

  1. 浏览器向API传递数据和命令。API执行命令并返回一个响应。
  2. 每秒检查一次API,更新用户的缓存,将缓存的缓存内容发送给浏览器。

我尝试了不同的技术来处理这个问题,但没有一个效果很好,而且都不可扩展。

这是我尝试过的一些技巧

  1. 在Javascript中使用setInterval()函数每秒调用API。
  2. 服务器发送事件(SSE)
  3. 在ShardWorker中使用setInterval()函数每秒调用一次API。

我希望我可以使用WebSocket和node.js进行此通信。

WebSocket如何处理上面列出的两种通信类型?

处理这个问题最简单的方法是使用套接字。io

http://socket。在/docs/你可以找到文档,

基本上在客户端你可以使用' socket '。On ('cache', function(msg) {//blabla});

而在服务器端,当缓存被更新套接字时。发出("缓存",味精);