iOS:队列HTTP调用

时间:2012-02-14 20:36:04

标签: ios http queue nsurlrequest

我正在开发一个应用程序,它允许用户管理(CRUD)存储在服务器上的内容。我镜像了本地存储中的一些数据(核心数据)。

当用户删除或更新文件时,我会在本地数据库中删除它并向服务器发送HTTP请求。我不想并行发送多个请求,我想实现离线模式。我正在考虑某种存储请求并在设备连接到互联网时执行它们的队列。如果请求失败,则工作人员应该再次尝试,然后再处理队列中的下一个请求。

实现这一目标的常见做法是什么?是否有任何具有此功能的框架?

2 个答案:

答案 0 :(得分:3)

ASIHTTPRequest还有一个使用NSOperationQueue和他们自己的队列版本的例子:

http://allseeing-i.com/ASIHTTPRequest/How-to-use#using_a_queue

这将允许您对请求进行排队并处理它们,而不会阻止您的应用程序流。

要处理离线模式,您可能需要将它们发送到数据库中的“队列”,在连接时(或用户点击同步时)将它们拉出来并将它们添加到您的{{1 }}。 NSOperationQueue允许您暂停调度(并重新激活它),但我不确定它是否真的像排队行动的持久存储一样。

答案 1 :(得分:0)