Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在客户端处理分页api_Objective C_Swift_Rest_Pagination_Api Design - Fatal编程技术网

Objective c 在客户端处理分页api

Objective c 在客户端处理分页api,objective-c,swift,rest,pagination,api-design,Objective C,Swift,Rest,Pagination,Api Design,我创建了一个api,它包含以下三个参数:page,经度,纬度。因此,在执行请求时,您将传递用户位置和给定页面,api将返回按用户位置排序的组织页面。此数据在客户端移动数据库中保存/更新。我的问题是,当尝试在视图中填充此数据时,客户端如何知道哪些数据已更新,哪些未更新,因为它是一个分页api,它只会更新/保存页面上的对象数 到目前为止,我只尝试填充它在页面上检索到的对象数,但是api中的对象可能会根据用户改变位置的速度切换页面?我曾考虑在请求数据时在我的移动数据库对象中设置某种标志,但不太确定在这

我创建了一个api,它包含以下三个参数:
page
经度
纬度
。因此,在执行请求时,您将传递用户位置和给定页面,api将返回按用户位置排序的组织页面。此数据在客户端移动数据库中保存/更新。我的问题是,当尝试在视图中填充此数据时,客户端如何知道哪些数据已更新,哪些未更新,因为它是一个分页api,它只会更新/保存页面上的对象数


到目前为止,我只尝试填充它在页面上检索到的对象数,但是api中的对象可能会根据用户改变位置的速度切换页面?我曾考虑在请求数据时在我的移动数据库对象中设置某种标志,但不太确定在这种情况下该怎么办?

我倾向于认为您的本地数据库与用户的当前位置相关,由其经度和纬度定义。因此,我建议,如果用户改变了位置,您应该清理本地数据库,并使用从服务器上获得的新位置重新填充


这将是一种过于简单的方法。如您所述,如果您在附近的某个位置获得了出现在前一位置的不同页面中的组织,则可能的优化方法是将每个组织的当前页面(以及页面中的位置)存储在数据库中。检索新位置时,检查接收到的每个组织是否已存储在数据库中(组织需要具有唯一的id才能执行此操作),然后更改位置/页面以匹配从服务器接收到的新位置

我已经完成了数据的检索,但是我需要从客户端的角度来设计它的指导。好的,但是清除本地数据库,在缓存方面,这不是一个坏的做法吗?一点也不,这只是取决于情况,以及您首先拥有本地缓存的原因。。。离线使用?为了表演?。。。在您的情况下,如果用户经常改变位置,可能没有意义。它还取决于给定时间内缓存的大小以及许多其他因素。。。但无论如何,正如我在回答中提到的,如果你能确定收到的组织,你可以选择一个更优化的解决方案。