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

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

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

我有两种沟通方式

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

我尝试了不同的技术来处理这个问题,但是没有一个能够很好地工作,而且都不能扩展。

这里有一些我尝试过的技巧

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

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

WebSocket如何处理上面列出的通信types?

处理这个最简单的方法是使用socket.io

http://socket.io/docs/你可以find文件,

基本上在客户端上,你可以做`socket.on('cache',function(msg){// blabla});

而在服务器中,当caching更新时socket.emit('cache',msg);