Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие _ QHttp + gzip

Автор: lioncub 23.11.2009, 20:30

При добавлении в запрос
"Accept-Encoding", "gzip,deflate"
получаю запокованную страницу, в заголовке ответа соответственно
Content-Encoding: gzip

как распоковать данные?

Автор: ViGOur 23.11.2009, 20:35

Тот же HTTP-сервер Apache использует http://www.zlib.net/ для реализации сжатия для протокола HTTP/1.1. Вот zlib и используй для распаковки данных.
Я как-то его использовал, ничего сложного нет.

Автор: lioncub 23.11.2009, 21:11

а встроенного ничего нет?

Автор: ViGOur 23.11.2009, 21:17

Можно попробовать http://doc.crossplatform.ru/qt/4.5.0/qbytearray.html#qUncompress

Автор: lioncub 23.11.2009, 23:59

а есть не большой рабочий примерчик на QByteArray qUncompress ( const QByteArray & data )?

Автор: ViGOur 24.11.2009, 0:40

Зачем тебе пример, в документации написано:

Цитата
QByteArray qUncompress ( const QByteArray & data )
Распаковывает байтовый массив data и возвращает новый массив с распакованными данными.

И еще важно:
Цитата
Note: If you want to use this function to uncompress external data compressed using zlib, you first need to prepend four bytes to the byte array that contain the expected length (as an unsigned integer) of the uncompressed data encoded in big-endian order (most significant byte first).

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)