Скачивайте файлы одним http запросом и без архивации - PullRequest
0 голосов
/ 07 апреля 2011

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

Но проблема в том, что архивирование файлов занимает много времени. Итак, есть ли способ, где я мог бы загрузить все файлы без архивирования.

Ответы [ 2 ]

1 голос
/ 07 апреля 2011

У меня была похожая проблема, когда создание zip-архива заняло много времени, но мне нужно было загрузить более одного файла.

То, что спасло меня, было http://pablotron.org/?cid=1568 Zip Stream - это класс, который создает zip-архив на лету и во время загрузки.

Большинство классов «на лету» создают архив (пока вы ожидаете начала загрузки) и только после того, как он полностью создан, они начинают отправлять вам архив. Этот класс начинает отправку архива по мере его создания, так вы сэкономите время, которое вы хотели.

1 голос
/ 07 апреля 2011

Сана, я ошиблась, zip можно использовать в потоке:

zip -0 -r - .

начнет рекурсивное хранение файлов из текущего каталога и отправит вывод в стандартный вывод. Вы можете захватить стандартный вывод (см. popen(3)) и немедленно начать отправлять его клиентам.

...