【问题标题】:Retrieve data from dynamoDB back to local storage (Datastore) - Flutter将 dynamoDB 中的数据检索回本地存储(Datastore) - Flutter
【发布时间】:2021-03-25 08:07:22
【问题描述】:

我是 Amplify 数据存储的新手,并决定将 Amplify Datastore 与 Flutter 应用程序一起使用,为用户提供离线模式功能。我使用 Datastore 成功实现了我的项目,但我想在用户注销时清除本地存储。如果重新登录,我希望用户的数据在那里,但似乎数据存储同步数据从本地到云开箱即用但不要将云同步到本地存储,因为我看不到任何记录(重新登录后或之后重新安装)。

那么我们是否需要使用 GraphQL API 从 dynamoDB 检索数据,然后将其保存到本地数据存储区,或者 Amplify 是否提供了任何开箱即用的功能来从云中检索数据?

我还注意到,在几次登录和注销后,它以某种方式从云中获取数据,并且我能够在我的应用程序中看到记录。不知道发生了什么:/

【问题讨论】:

    标签: flutter aws-amplify


    【解决方案1】:

    默认情况下,Amplify DataStore 会自动将所有数据从后端同步到本地设备。听起来好像已经发现了 DataStore.clear() 并在用户注销时使用它来清除本地存储。

    下次应用启动并且用户登录数据存储区时,将连接到后端。当应用程序进行第一次查询时,数据将从后端开始同步。如果您想提前开始同步,请使用 DataStore.start()。在任何一种情况下,初始查询都可能不会返回您想要的所有数据,因为同步需要时间。您可以在运行查询之前等待数据已同步的事件,或者在运行查询之前确保有一定数量的数据可用。

    更多信息start and close methods

    您可以监控的事件是ready

    【讨论】:

      猜你喜欢
      • 2016-04-02
      • 1970-01-01
      • 2018-11-17
      • 1970-01-01
      • 2019-12-03
      • 2017-04-11
      • 1970-01-01
      • 2012-05-05
      • 2018-05-15
      相关资源
      最近更新 更多