Чанкованный ответ не обработан libcurl - PullRequest
1 голос
/ 04 февраля 2011

Я использую libcurl для загрузки файла с URL.Оригинальный размер файла 1700k, но я получаю только 1200k.После того, как я проверил анализатор пакетов, я понял, что данные поступают в чанкованном кодировании и gzip.Также мой обратный вызов прогресса всегда показывает -0-.Я попытался установить CURLOPT_ENCODING в значения "gzip", "deflate", "", "blah", 123123 (которые не являются нулевыми), но безуспешно.Я все еще получаю 1200k необработанных данных.Что я должен сделать, чтобы это работало вместе с проблемой прогресса ??

Спасибо, Фатих

1 Ответ

0 голосов
/ 07 февраля 2011

libcurl вызывает обратный вызов хода выполнения с "dltotal", установленным в 0, когда используется чанкованное кодирование, поскольку тогда он не может знать общий размер.

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

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

...