Ios RestKit:RKRequestQueue中的RequeueRKRequest
我正在尝试在我的应用程序中实现一个上载队列。我正在将我的Ios RestKit:RKRequestQueue中的RequeueRKRequest,ios,network-programming,restkit,Ios,Network Programming,Restkit,我正在尝试在我的应用程序中实现一个上载队列。我正在将我的RKRequests放入RKRequestQueue并调用[queue start]。但是,我们都知道,网络连接并不是永久的。我现在使用RKReachabilityObserver来确定何时挂起和恢复队列,它工作正常(至少现在,但我听说RestKit中的可达性代码存在一些问题)。这使我可以停止发送新数据,直到网络再次可用。但当网络连接断开时,所有活动的RKRequest都会发出-(void)request:(RKRequest*)reque
RKRequest
s放入RKRequestQueue
并调用[queue start]
。但是,我们都知道,网络连接并不是永久的。我现在使用RKReachabilityObserver
来确定何时挂起和恢复队列,它工作正常(至少现在,但我听说RestKit中的可达性代码存在一些问题)。这使我可以停止发送新数据,直到网络再次可用。但当网络连接断开时,所有活动的RKRequest
都会发出-(void)request:(RKRequest*)request didFailLoadWithError:(NSError*)error
,我想,我可以将RKRequest
重新放入队列
所以,我试过这个:
- (void)request:(RKRequest *)request didFailLoadWithError:(NSError *)error
{
NSLog(@"Request failed");
[[request queue] cancelRequest:request];
[[request queue] addRequest:request];
}
但是我在didFailLoadWithError
的RKRequest
方法中得到了一个EXC\u BAD\u访问
我的问题是:如何重新请求
RKRequest
不要取消并添加到队列,而是执行以下操作:
[request send];
但是最好的解决方案是使用RKClient,它使事情变得更容易。您不必担心排队问题。客户机附带了RKRequestQueue的实例,并在幕后发挥了所有的魔力,特别是它将为给定客户机配置的所有请求添加到客户机请求队列中,并为您分派它们。谢谢,我已经尝试过了,但当我调用
[请求发送]
。在再次发送请求之前,我已经添加了[[request queue]cancelRequest:request]
,现在看来它正在工作。再次感谢您。