我多次调用相同的服务(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 : 上传带有其他参数的图片

AFnetworking Vs dispatch_aync() Vs SDWebImage 框架

iOS:AFNetworking 多次下载。请求操作超时

iOS AFNetworking downloadProgressBlock 计算返回负数

AFHTTPSessionManager 使用 AFNetworking 调用多个 Web 服务或批处理

1 个组件被多次调用。如果 angularjs 相同