Alamofire ImageDownloader请求已取消,错误代码为-999

时间:2018-11-28 00:07:47

标签: alamofire alamofireimage

编辑:查看注释中的解决方案。

我正在尝试从我们的服务器上下载用户个人资料的头像,并且遇到一个问题,无论使用哪个URL,Alamofire ImageDownloader请求都会失败,并显示“已取消”状态和错误代码-999。我尝试从与我们的应用程序无关的其他域下载,每次都遇到相同的问题。到目前为止,我尝试过的所有URL都是https,因为我们应用程序的info.plist会阻止不安全的URL。但是,我已经验证了所请求的图像可以在未经身份验证的Web浏览器中下载而没有任何问题。另外,我们在整个应用程序中成功使用了Alamofire SessionManager,包括需要身份验证的请求,因此这种现象似乎仅限于ImageDownloader。

示例代码:

 let downloader = ImageDownloader(configuration: ImageDownloader.defaultURLSessionConfiguration(),
                    downloadPrioritization: .fifo,
                    maximumActiveDownloads: 4,
                    imageCache: AutoPurgingImageCache())
let testString = "https://www.some-domain.com/image-url.jpg"
let urlRequest = URLRequest(url: URL(string: testString)!)

downloader.download(urlRequest) { response in
  debugPrint(response.result)
  if let image = response.result.value {
    print(image)
    self.profilePicture = response.result.value
  } else {
  self.profilePicture = UIImage(named: "avatar")
}

产生的错误如下:

2018-11-27 15:32:06.457067-0800 Tocca Dev[945:145021] Task <88DB86C7-7C28-44EB-8ABA-54008A3CC97C>.<1> load failed with error Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo={NSErrorFailingURLStringKey=https://www.some-domain.com/image-url.jpg, NSErrorFailingURLKey=https://www.some-domain.com/image-url.jpg, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <88DB86C7-7C28-44EB-8ABA-54008A3CC97C>.<1>"
), _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <88DB86C7-7C28-44EB-8ABA-54008A3CC97C>.<1>, NSLocalizedDescription=cancelled} [-999]
2018-11-27 15:32:06.476488-0800 Tocca Dev[945:145023] Task <88DB86C7-7C28-44EB-8ABA-54008A3CC97C>.<1> HTTP load failed (error code: -999 [1:89])
2018-11-27 15:32:06.477430-0800 Tocca Dev[945:145023] Task <88DB86C7-7C28-44EB-8ABA-54008A3CC97C>.<1> finished with error - code: -999

任何帮助将不胜感激。

0 个答案:

没有答案