我发送了一批相同类型的GET请求:https://server.com/some-object/ {id}:
let urlStr: String = "https://server.com/some-object/1"
var urlRequest = URLRequest(url: url)
let task = session.dataTask(with: urlRequest) {
(data, response, error) in
guard error == nil else {
print(error!)
return
}
...
}
task.resume()
问题是其中一些请求因超时而失败:
{错误域= kCFErrorDomainCFNetwork代码= -1001"(null)" UserInfo = {_ kCFStreamErrorCodeKey = -2102,_kCFStreamErrorDomainKey = 4}}
如果我发送3个请求,那么例如其中一个请求可能会失败。 5个请求可能导致2次失败。 15个请求~6个故障...每次都有不同的故障数量。同一个请求可以第一次返回数据,下次失败。
我尝试将这些请求放到并发OperationQueue,串行OperationQueue,没有OperationQueue - 没有成功。在串行队列中,每个第3到第4个请求都会因超时而失败。
根据服务器日志,它接收所有请求并处理它们而没有任何错误。但在客户端我暂停了。
只有使用HTTPS才会发生这种情况。当我将地址更改为HTTP时,所有请求都会返回数据。
任何人都可以帮助我吗?可能是什么问题?