如何在React应用程序上监听特定的后端事件?

时间:2019-11-05 19:01:17

标签: python reactjs flask webhooks server-sent-events

我有一个react应用程序和一个烧瓶后端。对于以下情况,我需要一个简单的解决方案,而无需不断轮询后端:

  • 用户从React应用触发操作(从POST到后端)
  • 后端接收请求并触发其他服务(服务X),这可能是一个长期运行的过程。
  • 第二项服务(如果完成)将返回后端。
  • 后端将完成通知推送回React前端。

也就是说,React App-> Flask EP-A-> Service X(完成后会调用Flask EP-B)

我研究了WebSockets和SSE(服务器发送的事件)选项。我认为我需要结合SSE和某种形式的webhooks(第二项服务在完成后会调用Flask后端)。

这里有两件事对我仍然很模糊:

  • 在react应用程序中,我在flask上注册了一个端点(例如/ events / oncomplete),但是打开连接后看起来好像一直在接收响应。
  • 要使第二个服务通知后端,我需要另一个端点(服务X调用烧瓶),如何连接这两个端点? (服务X-> Flask EP-B-> Flask EP-A-> React App)

还是应该采用其他方法?

谢谢

1 个答案:

答案 0 :(得分:0)

我认为您需要使用网络套接字。 对于Node.js npm软件包-https://www.npmjs.com/package/ws