NSURLSession:如何增加URL请求的超时时间?
我正在使用iOS 7的新版NSURLSessionDataTask
本来检索数据,如下所示:
NSURLSession *session = [NSURLSession sharedSession];NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:
request completionHandler:
^(NSData *data, NSURLResponse *response, NSError *error) {
//
}];
如何增加超时值以避免错误"The request timed out"
(在 NSURLErrorDomain
Code =中-1001
)?
我已经检查了NSURLSessionConfiguration的文档,但是没有找到设置超时值的方法。
谢谢您的帮助!
回答:
对象
NSURLSessionConfiguration *sessionConfig = [NSURLSessionConfiguration defaultSessionConfiguration];sessionConfig.timeoutIntervalForRequest = 30.0;
sessionConfig.timeoutIntervalForResource = 60.0;
迅速
let sessionConfig = URLSessionConfiguration.defaultsessionConfig.timeoutIntervalForRequest = 30.0
sessionConfig.timeoutIntervalForResource = 60.0
let session = URLSession(configuration: sessionConfig)
文档怎么说
timeoutIntervalForRequest
并timeoutIntervalForResource
指定请求和资源的超时间隔。
-等待其他数据时使用的超时间隔。每当有新数据到达时,与该值关联的计时器就会重置。当请求计时器达到指定的间隔但未接收到任何新数据时,它将触发超时。
-资源请求应允许的最长时间。该值控制放弃之前等待整个资源传输的时间。资源计时器在发起请求时启动,并计数直到请求完成或达到此超时间隔(以先到者为准)。
基于NSURLSessionConfiguration类的参考
以上是 NSURLSession:如何增加URL请求的超时时间? 的全部内容, 来源链接: utcz.com/qa/429419.html