1
我测试URLSession的行为时,没有与此代码互联网连接:URLSession响应时没有互联网连接
var dataTask: URLSessionDataTask?
let url = NSURL(string: "https://itunes.apple.com/search?media=music&entity=song&term=test")
dataTask = defaultSession.dataTask(with: url! as URL) {
data, response, error in
if let error = error {
print(error.localizedDescription)
} else if let _ = response as? HTTPURLResponse {
print("ok")
}
}
dataTask?.resume()
我禁用我的互联网连接执行该代码。在iOS9中,completionBlock被立即调用,并且出现此错误
错误域= NSURLErrorDomain代码= -1009“Internet连接似乎处于脱机状态。
但是,当我iOS10下执行完全相同的代码完成块被一分钟(超时)和我有错误后,称的上是不同的
错误域= NSURLErrorDomain代码= - 1001“请求超时。”
我需要在iOS9和iOS10下具有相同的行为。我使用的是xCode 8.1,我使用模拟器在不同的iOS版本下测试应用程序。
谢谢!
似乎是与模拟器有关的问题,因为在设备上工作正常。 –