【发布时间】:2015-03-19 11:02:22
【问题描述】:
我正在使用 AFNetworking 2.5,一切都很好,直到我遇到了非常严重的网络问题。我的请求随机超时:
Error Domain=NSURLErrorDomain Code=-1001
_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=60
所以,当我发送图像时,我想通过使用来增加超时延迟:
aRequestSerializer.timeoutInterval = 600; // 10 minutes
不幸的是,请求在各种延迟后超时:30 秒、2 分钟、3 分半、6 分钟......但它永远不会在 10 分钟停止。
有什么想法吗? 提前致谢。
这是我的代码:
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.requestSerializer = [AFHTTPRequestSerializer serializer];
[self setupAuthTokenForRequestSerializer:manager.requestSerializer];
[self setupAuthHeaderForRequestSerializer:manager.requestSerializer];
[self setupTimeoutForRequestSerializer:manager.requestSerializer];
return [manager POST:aUrl
parameters:nil
constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
[formData appendPartWithFileData:aImageData
name:@"file"
fileName:@"file.jpg"
mimeType:@"image/jpeg"];
}
success:successBlock
failure:failureBlock];
编辑:问题也出现在 iOS 7 和 8、真实设备和模拟器上...
编辑 2:看起来结果操作的请求的 timeoutInterval 只有 60...(它仍然没有解释为什么这个随机超时)
编辑3:看来AFHTTPRequestSerializer的KVO更新NSMutableURLRequest timeoutInterval不起作用...
【问题讨论】:
标签: ios timeout afnetworking afnetworking-2 nsmutableurlrequest