gpt4 book ai didi

ios - 使来自 Core Data 中的 API 的本地缓存数据失效

转载 作者:行者123 更新时间:2023-11-29 13:11:47 25 4
gpt4 key购买 nike

在我正在构建的应用程序中,我使用核心数据缓存来自 API 的远程内容以供离线查看。这一切都很好,除了一个大问题:如果服务器上的记录被删除,我无法检测到它并删除其缓存的副本。

我唯一能想到的是,当我从 API 中提取数据并仅将 API 返回的记录再次标记为有效时,以某种方式将所有当前数据标记为“无效”,但这似乎是一个笨拙的解决方案到问题。此外,由于我使用的 API 中的数据是分页的,因此无法很好地扩展大量记录。

所以我想知道的是:有没有更好的方法来使本地缓存数据失效以响应它在服务器端被删除?

最佳答案

虽然这不是最简单的方法,但我建议让服务器端缓存已删除的项目并公开一个端点,您可以调用该端点来获取已删除的项目。在一个完美的世界里。

你可以做的是在后台线程中,从服务器下载所有数据并将其与本地数据进行比较。因此,不是仅仅使所有这些无效并重新解析它(这对于大型数据集可能需要时间),而是运行并将服务器上的对象的 id 与 CoreData 中的对象进行比较。如果它在那里很好,如果不是,请将其从您的本地数据库中删除。希望这可以帮助。

关于ios - 使来自 Core Data 中的 API 的本地缓存数据失效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17123065/

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