gpt4 book ai didi

sqlite - 通过 nativescript 应用程序和数据库同步脱机

转载 作者:行者123 更新时间:2023-12-03 18:32:26 25 4
gpt4 key购买 nike

我有一个 NativeScript(角度)应用程序,该应用程序当前对服务器进行 API 调用以获取数据。

我想实现一旦设备上线但使用我当前的 API 进行双向同步的东西。没有 BaaS。

我想到的第一个解决方案是做一种缓存。有时,该应用程序会使数据库中的信息无效并再次获取它。我不喜欢这种方法,因为有很大的列表(可能会改变。它们是分批获取的,即按页面。其中一个是下载并存储在设备上的文件列表。所以我必须保留这些仍然在列表中的,删除那些不在列表中的。这听起来像是一场噩梦。

你会如何解决这样的问题?

最佳答案

我使用 nativescript-couchebase 插件来存储数据。我们有以下服务

  • 连接
  • 资料
  • API服务

  • 基于连接是在线/离线,我们要么从远程 API 或通过 couchebase db 获取数据。请注意,API 服务总是只返回来自 Couchebase 的数据。

    所以在线模式下

    API 调用 -> 写入数据库 -> 从 Couchebase 返回最新数据

    离线模式

    读取 DB -> 从 Couchebase 返回最新数据

    除此之外,我们还在队列中维护所有 API 调用。因此,只要连接返回,API 调用就会按顺序处理。从离线模式进入在线模式时您可能面临的另一个挑战是 token 到期。这个问题可以通过在您上线后向用户显示一个小弹出窗口来解决。

    关于sqlite - 通过 nativescript 应用程序和数据库同步脱机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56051241/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com