Загрузить задачу с помощью NSURLSessionUploadTask, что вызывает ошибку NSURLErrorDomain -999

Я использую NSURLSessionUploadTask для загрузки файла на сервер. Как только задача возобновляется, все время от времени она терпит неудачу с кодом ошибки

NSURLErrorDomain error -999

Теперь нигде в приложении нет кода отмены. Из-за чего это отменяется?


person user3570727    schedule 23.03.2016    source источник


Ответы (2)


Я сталкивался с подобной проблемой раньше, ответ для меня заключался в том, что еще один такой же запрос был сделан до завершения предыдущего запроса. Я бы проверил с помощью точек останова, чтобы увидеть, может ли ваш метод, загружающий файл на сервер, срабатывать дважды. Конечно, это может быть еще одна проблема, которую трудно понять, не видя кода, но я бы начал с этого.

person naomimichiko    schedule 23.03.2016

Так что -999 в моем случае был отвлекающим маневром. На стороне iOS было немного вводящей в заблуждение информации:

  1. Ошибка -999 о том, что она была отменена, что является отменой пользователя. Это неправда.
  2. В сообщении об ошибке для параметра NSURLErrorBackgroundTaskCancelledReasonKey было установлено значение NSURLErrorCancelledReasonUserForceQuitApplication, что снова было неверным.

Фактическая проблема заключалась в том, что загружаемый файл был слишком большим для сервера, поэтому сервер отменил загрузку. Однако перевод сервера, отменяющего событие, привел к ошибке -999 с причиной NSURLErrorCancelledReasonUserForceQuitApplication.

person user3570727    schedule 25.03.2016