iOS в JAX-RS: большие данные и время ожидания - PullRequest
0 голосов
/ 26 апреля 2018

Я использую URLSession и запросы (обернутые Alamofire) на стороне iOS для PUT / POST больших данных на мой сервер JAX-RS.

Моя конечная точка JAX-RS использует JSON, но может иметь размер до 5 МБ, поэтому в плохих сетях это может занять некоторое время.

Чтобы избежать тайм-аута на стороне iOS (это моя основная проблема), я знаю, что могу использовать большой тайм-аут (скажем, один день).

Мои вопросы:

  1. Я верю, что установка такого тайм-аута может привести к сбою запроса «обречен с самого начала» только через один день, что помешает моему коду умно повторить попытку в нужное время. Верна ли эта вера и почему?
  2. На стороне сервера, я знаю, что мог бы использовать механизмы асинхронного ответа и потоковой передачи, получить полный JSON String, проанализировать его, чтобы получить параметры моего запроса ... Но так как он вводит много шаблонного и некоторых раздражающих адаптаций в целевой серверный проект, есть ли альтернатива, чтобы клиент получал что-то, что сбрасывает простоя timeout из NSURLRequest?
  3. Есть ли альтернатива на стороне iOS? Например, у меня была интуиция с использованием NSURLSessionUploadTask, но я не знаю, действительно ли это так.
...