如何自动从Apollo Client的网络错误中恢复?

时间:2019-09-13 07:35:36

标签: express graphql apollo apollo-client apollo-server

我有一个组织可以用来显示数据的应用程序。该应用程序使用React,express,Apollo Server和Apollo Client。该应用程序显示来自多个来源的数据,并使用一种轮询方法来更新数据。当我执行代码更新并且前端最终尝试执行请求更多数据但服务器暂时不可用(例如,在build命令更新代码的2分钟或更短时间内)时,问题就来了。这将导致所有仪表板组件均显示网络错误。

我的问题是,有一个好的解决方案可以使前端自动恢复,以便我们不必在每次更新后刷新仪表板吗?例如保持轮询而不是停止网络错误?

2 个答案:

答案 0 :(得分:0)

听起来Apollo Link Retry应该做您想要的。网络出现故障后将重试

答案 1 :(得分:0)

注意!您必须使用多个Apollo-Link,然后像使用WebSocketLink,Http-Link和Retry-Link一样,Retry-Link必须是Apollo-Link数组中的第一个链接。否则它将无法正常工作。