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]
,现在看来它正在工作。再次感谢您。