YAJL-ObjC + потоковый парсер + gzip

Я успешно использую yajl-objc вместе с ASIHTTPRequest в проекте iPhone, который осуществляет доступ к сети, извлекает и анализирует данные JSON. ASIHTTPRequest по умолчанию разрешает сжатые HTTP-ответы, и это здорово, но я использую возможности потокового синтаксического анализатора YAJL, и он по праву задыхается от сжатых данных. Я могу дождаться завершения HTTP-запроса, затем распаковать gzip и проанализировать ответ, но здесь я стремлюсь к скорости и хотел бы анализировать данные, заархивированные gzip, по мере их загрузки.

Можно ли разархивировать данные на лету, проанализировать JSON внутри, а затем забыть об этом куске сжатых данных?

Если бы эту последнюю часть можно было решить, эта установка, кажется, сделала бы отличную систему:

  • YAJL — один из самых быстрых парсеров JSON.
  • ASIHTTPRequest прост и асинхронен
  • Тела ответов могут быть заархивированы gzip, что сэкономит сетевой трафик.
  • JSON можно анализировать, не загружая все дерево в ограниченную память устройства.

Любое руководство будет с благодарностью!


person Collin Allen    schedule 19.06.2010    source источник


Ответы (1)


ДА. asihttprequest/browse_thread/thread/ee2e44379b181439/7699dd200780cd32#7699dd200780cd32

person DTs    schedule 23.08.2010