我正在使用AFNetworking
发出网络请求。请求失败块failure:^(AFHTTPRequestOperation *operation, NSError *error)
在两种情况下被调用,
在故障区块代码中,我无法区分上述两个原因。我需要区分只在请求因网络问题而失败时才提供自定义通知。
如何正确识别请求失败的原因?
答案 0 :(得分:1)
我认为error.code
的值在方案1中等于NSURLErrorNotConnectedToInternet
(-1009),在方案2中等于NSURLErrorCancelled
( - 999)。
以下是一个例子:
failure:^(AFHTTPRequestOperation *operation, NSError* error) {
if(error.code == NSURLErrorNotConnectedToInternet) {
// handle scenario 1
} else if(error.code == NSURLErrorCancelled) {
// handle scenario 2
} else {
// handle unexpected errors
}
}