我多次调用相同的服务(AFNetworking)
Posted
技术标签:
【中文标题】我多次调用相同的服务(AFNetworking)【英文标题】:I call same service multiple times (AFNetworking) 【发布时间】:2015-01-20 08:28:23 【问题描述】:当我多次调用同一个服务时,有什么方法可以只操作最后一次调用,这样其他异步调用(对不同服务)就不会受到影响?当我尝试使用[self.requestOperationManager.operationQueue cancelAllOperations]
时,它会取消所有通话。
提前致谢。
BR
【问题讨论】:
【参考方案1】:您可以存储对与服务对应的 AFHTTPRequestOperation 对象的引用,并且您可以仅取消该操作,同时再次调用相同的服务。或者,如果您不想存储对 AFHTTPRequestOperation 的引用,则遍历操作队列中的所有操作,并根据 request(NSURLRequest*) 属性取消操作。
【讨论】:
感谢我的解决方案 (AFHTTPRequestOperation *operation in self.requestOperationManager.operationQueue.operations) NSURL *url = operation.request.URL ; NSString *urlString = [url 绝对字符串]; if ([urlString rangeOfString:@"TaskList"].location != NSNotFound) [操作取消]; 好的,很好。这与答案中建议的第二个相同。以上是关于我多次调用相同的服务(AFNetworking)的主要内容,如果未能解决你的问题,请参考以下文章
AFnetworking Vs dispatch_aync() Vs SDWebImage 框架
iOS AFNetworking downloadProgressBlock 计算返回负数