【问题标题】:How do I make use of GraphQL Apollo cache for offline support?如何使用 GraphQL Apollo 缓存来提供离线支持?
【发布时间】:2018-05-29 19:43:40
【问题描述】:

我正在构建一个需要离线支持的 Apollo 应用。

我知道 Apollo 允许我们使用 apollo-cache-inmemory 直接控制缓存,并且使用像 writeQuery 这样的方法,我们能够在不更改服务器上的数据的情况下改变缓存数据。

在应用可能会离线一段时间的情况下,将本地缓存数据与服务器同步的最佳方法是什么?

【问题讨论】:

    标签: caching graphql apollo


    【解决方案1】:

    AWS AppSync 会为您处理这个问题,并且有一个 Apollo 插件:

    yarn add aws-appsync
    yarn add aws-appsync-react
    

    这将执行离线缓存和自动同步以及冲突解决。您还可以使用 AppSync 插件和 Apollo 控制 Optimistic UI:https://docs.aws.amazon.com/appsync/latest/devguide/building-a-client-app-react.html#offline-settings

    【讨论】:

    • 谢谢。这是否意味着我必须使用 AWS db 作为数据源才能工作?
    • @tropicalfish AppSync 支持 DynamoDB、Amazon Elasticsearch 和 AWS Lambda。如果您想使用另一个数据库,例如 MySQL,您可以使用 Lambda 数据源连接到它。离线功能也一样。
    【解决方案2】:

    你看到这个了吗?也许它可以帮助.... https://dev-blog.apollodata.com/announcing-apollo-cache-persist-cb05aec16325

    【讨论】:

    • 该链接似乎是特定于网络的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    • 1970-01-01
    • 2014-02-22
    • 1970-01-01
    • 2011-12-10
    • 2011-10-27
    相关资源
    最近更新 更多