Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2012, 16:04   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию INDY. Раскодировать GZIP-строку.

доброго времени суток!

Есть сайт, который может отвечать в двух вариантах:
1. html
2. json не обработанные данные, как текст(application/json - текст? Если нет, то как принимать?)

Оба варианта можно попросить соотв. строкой в заголовке HTTP пакета.

Пример сжатых данных приведен в responce.txt

Я знаю о ZlibExGZ, даже новую версию с оф. сайта качал.

Не раскодирует он их.
Порчи шапки тоже нет т.к. не раскодировал бы их ни браузер ни снифер ни сам сервер.

Я хз как их обработать.
В случае stream, вообще вылетает при проверке существования шабки GZ файла(TGZHeader).
В варианте string, распознает TGZHeader но дальше эпично вылетает с DataError.

Браузеры и сниферы распознают и обрабатывают.

1. Почему не html?
в html уже обработнный json и з которого динамично(через js) отдаются данны из этого json, на стороне сервера.
Мне проблематично, а иногда невозможно, будет вытягивать нужные данные.
Мне нужны все данные одним пакетом. Генерруемый html очень динамичен и не юзабелен.

2. Почему нужны сжатые данные?
Запросов к серверу будет много, пакеты данных тоже большие. Весьма удобно и мне и серверу не тратить время на передачу/прием и обработку этих данных

По сути, это не существунно но было бы желательно.
Вложения
Тип файла: txt response.txt (1.7 Кб, 142 просмотров)

Последний раз редактировалось Человек_Борща; 25.05.2012 в 19:13.
Человек_Борща вне форума Ответить с цитированием
Старый 26.05.2012, 12:08   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

есть такой класс в jcl - TJclGZIPDecompressionStream

хотя сам я с ним не работал, т.к. после некоторых плясок с бубном можно распаковать gzip стандартным System.ZLib.pas
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 27.05.2012, 20:25   #3
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Врятли поможет. Я использовал ZLib от 23 мая этого года. А в JCL будет древняя версия.
Человек_Борща вне форума Ответить с цитированием
Старый 28.05.2012, 11:23   #4
Mifody
Форумчанин
 
Регистрация: 12.02.2009
Сообщений: 215
По умолчанию

Адрес сайта можно "вскрыть", а желательнее кусок исходника получения данных.

Вообще, вполне возможно, проблему можно решить, как я в свое время с майлом поступал. Отключить нафиг проверку . Метод конечно не ахти, но работал
Помог с вопросом - тыркаем в весы, Вам не сложно, а мне приятно
Mifody вне форума Ответить с цитированием
Старый 28.05.2012, 19:23   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Mifody, ас совсем не понял.
Я хочу GZIP-данные вскрыть.
Человек_Борща вне форума Ответить с цитированием
Старый 29.05.2012, 18:09   #6
Mifody
Форумчанин
 
Регистрация: 12.02.2009
Сообщений: 215
По умолчанию

http://www.smw75.ru/ox-uzh-etot-stra...-poluchaetsya/

в свое время с mail.ru была проблема, zgip урезанный приходил. Решилось в данном конкретном случае - тупо заремарил эксепшены.
как искал - дебагом входиш в процедуру распаковки, и начинаеш ремарить эксепшены, которые срабатывают.

Мне тогда помогло, в конкретно этом случае - ссылочку на сайт, а желательно и кусок исходника, который получает данные, может получится помоч
Помог с вопросом - тыркаем в весы, Вам не сложно, а мне приятно
Mifody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Трабл с gzip и http bulldog5293 Работа с сетью в Delphi 3 13.12.2011 10:20
HTTP и Gzip Slafka C/C++ Сетевое программирование 3 18.10.2011 20:30
INDY 10.5.5, 10.5.7, 10.5.8 Переход на новую строку. ZBEP Работа с сетью в Delphi 3 07.11.2010 20:21
Gzip в Delphi sivuda Работа с сетью в Delphi 1 22.08.2010 19:55
Разжать GZIP CoDeR Общие вопросы Delphi 3 23.06.2009 00:20