我有一个发布请求,需要使用NSURLSession
. 由于某些要求,我必须将超时设置为 230 秒。所以这里的想法是,NSURLSession
应该等待 230 秒,直到它将任务声明为超时问题。
我做了一些实验——
- 我设置了一些任意的 10 秒来检查超时问题,工作正常。
- 我将 50 秒设置为超时,工作正常。
- 我设置了 60 秒(这是默认超时),它又可以正常工作了。
- 我将 75 秒设置为超时,它也可以正常工作。
- 但是,当我将76设置为超时时,请求会在75 秒内超时
- 我将100 秒设置为超时,但请求在75 秒内再次超时。
- 我将200 秒设置为超时,请求在75 秒内再次超时。
那么是否有一些未记录的值,例如可用的最大超时时间为 75 秒?
我以两种方式设置超时
- 使用
timeoutInterval
属性NSMutableURLRequest
- 使用
defaultSessionConfiguration
属性,timeoutIntervalForRequest
以及timeoutIntervalForResource
我曾经发布dataTaskWithRequest
过服务。
所以最小值在确定超时时在所有三个属性之间生效。如果它小于 75 秒,它工作正常。但如果大于 75 秒,它就会忽略它。
请告诉我,什么问题?是 75 秒是分配给超时的最高时间,或者我在这里遗漏了什么。
PS 我正在主线程中执行任务并在 iOS 9.2 中进行调试。为了清楚起见,我正在检查服务器无法访问时的超时