Apollo GraphQL,在其他设备发生突变后触发客户端查询从服务器重新获取

问题描述 投票:0回答:1

我有一个 React Native 应用程序,在前端使用 React Apollo Client,在后端使用 React Apollo Server。该应用程序的重点是让用户协作构建物品库存。

我的问题是目前用户需要盲目刷新才能拉取其他用户插入的新数据。 即:当

John
将新的
Chair
添加到库存中时,
Maria
在刷新之前看不到
Chair

为了解决这个问题,我考虑了以下解决方案,我想听听您的意见,了解哪一种(或另一种)在 Apollo GraphQL 的背景下是最好的。

  1. 间隔轮询:每X秒刷新一次库存数据。非常容易设置,但我不太喜欢在大多数情况下生成大量请求的想法。
  2. 服务器发送事件:打开流并向客户端推送通知,以便他们可以刷新数据。但在我看来,这需要在阿波罗方面实施一个解决方案
  3. Apollo 订阅:我已经看到 Apollo GraphQL 建议订阅,但它们似乎并不特别适合我的用例。我想知道使它们适应刷新缓存的最佳方法是什么?使用 Web 服务实现HTTP 多部分实现 有什么好处?

谢谢您的意见。

reactjs react-native graphql apollo apollo-server
1个回答
0
投票

我认为 GraphQL 订阅完全适合用例,而且它比 SSE 更容易实现

© www.soinside.com 2019 - 2024. All rights reserved.