如何实现React + axios的长轮询

时间:2017-04-17 01:11:00

标签: javascript reactjs websocket axios

我正在使用React + axios与客户端的API通信。我是JavaScript的新手。

我如何实现长轮询,以便在网页上接近实时更新?

当后端是JSON REST API时,是否有更好的方法在页面上进行实时更新?我应该考虑使用WebSockets或服务器端事件还是长轮询很好?

1 个答案:

答案 0 :(得分:1)

对于您的用例,还有另一种可能更好的方法:服务器发送事件。

简而言之,

SSE是从客户端向服务器的简单GET请求-除了服务器在处理完请求后不会关闭连接之外。相反,HTTP连接保持打开状态,服务器可以向客户端多次写入数据,这些数据是实时显示的。

有关SSE与Websocket比较的更多信息,请阅读SO中的Alex Recarey的https://github.com/Microsoft/vscode-docs/blob/master/docs/editor/command-line.md#opening-vs-code-with-urls至“ answer”。