ios - 如何确保只显示来自 Rest api 的更新数据

标签 ios objective-c swift rest

我创建了应用程序和一个相互连接的分页 api。然而,我对仅显示更新数据的最佳实践有点困惑。例如,如果有一天我检索数据并将其保存到我的移动数据库中。第二天应用程序如何知道它应该发出请求并且只显示刚刚从数据库中获取的特定数据。我是否需要制作某种标志或查看 createdAt?

最佳答案

提出请求时,请包含 If-None-Match header 与本地资源的 ETagIf-Modified-Since header 包含请求本地资源的日期。

配置您的服务器以查找 header 并返回 304 Not Modified如果数据没有改变。这至少会为您节省一些响应流量。

此外,如果资源数据相对静态,或者客户端可以容忍陈旧的客户端数据,那么您可以添加 caching headers对你的回应。只要缓存的请求有效,该请求就永远不会离开您的客户端。

理想情况下,您希望设计 API 来尽可能支持这一点。例如,让请求“给我 50 米内的所有东西”返回 URI 列表。然后 API 只需要访问服务器来获取那些过时的 URI。

关于ios - 如何确保只显示来自 Rest api 的更新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36007843/

相关文章:

ios - 基于键对 NSMutableArray 进行排序,谓词不起作用?

ios - Collection View 布局为零,我已经尝试了一切

ios - 使用 UICollectionView 和 UICollectionViewCells 创建刷卡堆栈?

ios - 搜索和过滤数组firebase数据swift3

iPhone内存泄漏,不知道为什么Instruments工具这么认为

objective-c - cocoa :设置键等价物

ios - 如果花费太长时间则取消解析请求

swift - 为什么我无法在此特定方法中访问 self,但可以在其他方法中访问 self?

ios - 更改 UIWindow 的 rootViewController

ios - 将 maxlength 设置为特定的 UITextField