Приложение загружает файл (plist), который генерируется сервером. Для генерации файла серверу требуется слишком много времени, поэтому я хотел бы иметь возможность показывать прогресс (возможно, просмотр UIProgressView, но это не важно).
Поскольку загружаемый файл еще не был создан в начале запроса, мы не знаем expectedContentLength
. Тем не менее, у меня есть возможность предоставлять обновления прогресса из самого скрипта [PHP]. Для этого я использую ob_flush()
для каждой строки в файле, что прекрасно работает в браузере.
Но когда я делаю запрос из приложения, я получаю вызов от connection:didReceiveData:
только после того, как скрипт завершит выполнение, так что это не очень полезно.
Итак, мой вопрос сводится к следующему:
Как я могу подключиться к выполнению такого php-скрипта из моего приложения?
Я не возражаю против отправки 2 запросов на сервер, первый, который генерирует файл и предоставляет обновления при этом, а затем еще один, чтобы загрузить фактический файл.
Поскольку ни один из моих методов делегата NSUrlConnection не вызывается до тех пор, пока запрос не завершится, что нужно сделать моему сценарию для запуска этих методов?