我有疑问在其他成功块中调用请求是否正确?不应该准备任何并发症?因为有时我会收到失败的行动,我想知道可能是因为这个事实?
[[httpClient instance] getPath:@""
parameters:@""
success:^(AFHTTPRequestOperation *operation, id responseObject) {
//Success code
[[httpClient instance] getPath:@""
parameters:@""}
success:^(AFHTTPRequestOperation *operation, id responseObject) {
//Success code
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
//Error code
}];
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
//Error code
}];
答案 0 :(得分:1)
在完成块中嵌套请求不仅很好,如果第二个请求依赖于第一个请求中的数据,这种情况很常见。
在取消异步URL请求时调用错误-999(NSURLErrorCancelled)。在代码中查看对[AFHTTPClient -cancelAllHTTPOperationsWithMethod:path:]
或[AFURLConnectionOperation -cancel]
的调用。
答案 1 :(得分:0)
我认为在第一个成功块中再次调用getPath:...不是导致错误的原因。无论如何,您可以编辑您的问题并添加有关该错误的更多信息吗?
另外,您应该考虑使用AFHTTPRequestOperation
方法AFHTTPClient
创建两个HTTPRequestOperationWithRequest:success:failure:
,并使用NSOperation
方法addDependency:
将第二个依赖于第一个operationQueue
方法,然后将这些操作添加到HTTP客户端{{1}}。