设计一个消耗2个Restful Web Services的应用程序

时间:2013-06-19 21:24:18

标签: iphone ios objective-c restkit restkit-0.20

使用RestKit 0.2x,我想构建一个iPhone应用程序,它将使用2个不同的RESTful Web服务(两个不同的基本URL):

  • 网络服务将使用核心数据在持久存储中保留~6,000个对象。
  • Web服务B 不会使用核心数据,它只会映射到常规NSObject子类,而且还会检索大量对象(~1000个对象)。

我决定为该应用做以下设计:

- 在App Delegate中:

1)使用自己的基本URL定义两个不同的RKObjectManagers

2)为每个经理设置必要的对象/实体映射,以及请求描述符。

3)使用RestKit的方式定义持久存储内容。

- 在视图控制器中:

4)在后台线程中的所需视图控制器中调用getObjectsAtPath(对于Web服务A)的方法RKObjectManager(例如,dispatch_async),我假设使用后台线程,因为Web服务有数千个要检索的对象,然后使用NSFetchedResultsControllerUITableView上显示此数据。

5)在所需视图控制器的后台线程中调用方法getObjectsAtPath(对于Web服务B),并直接在UITableView上显示此数据。

我的问题:我的设计是否正确或缺少重要步骤?如果有任何缺失的东西,请你提一下吗?

P.S。 Web服务不涉及POST方法,仅GET,响应采用JSON格式。

1 个答案:

答案 0 :(得分:1)

对象管理器的设置听起来不错,应该可以正常工作。

调用get数据时,请勿从后台线程启动调用。 RestKit为你做到了。所有下载和映射都将在后台线程上完成,然后结果返回给主线程。