从iOS上的服务器缓存和加载数据

时间:2016-07-08 04:02:13

标签: ios json caching realm

我使用realm来缓存iOS设备上服务器的JSON响应,当我再次打开应用程序时,我应该显示缓存的数据,直到服务器给我一个新的JSON响应加载。

我知道它应该使用上次请求的时间戳来发出请求,以检查是否有新的响应,但是这还没有实现,服务器每次发送给我一个JSON对象,如果它是&#39 ;没有改变。

现在,我要求最好的做法来处理缓存的响应以及客户端服务器的响应。

1 个答案:

答案 0 :(得分:0)

如果JSON响应具有标识每个对象的键,则最佳做法是使用主键更新对象。

要定义模型的主键,请覆盖primaryKey()类方法。

请参阅, https://realm.io/docs/swift/latest/#primary-keys

然后,当您缓存回复时,可以将add(update:)update参数true一起使用。这使您可以只是添加到Realm的响应,无论是否存在。您可以每次下载响应,然后只存储它。 Realm通过密钥查找现有值并更新它。你不需要关心价值是否存在。