Как распаковать тело ответа gzipped http пакета? - PullRequest
0 голосов
/ 29 марта 2019

Я пишу модуль, который отслеживает сетевой трафик по протоколу Http, и я могу получить пакеты запросов и ответов, все остальные apis, но у меня возникают некоторые проблемы со временем распаковки gzipped rest services (GET, POST). Например, моя служба запросов get обычно возвращает следующие данные json в части тела:

[ { «questionId»: 684, "groupName": ноль, "screenId": "ACHTPRCK", "YetEkranAd": ноль, "question": "Para çekme işleminde döviz cinsinden çekmek mümkün mü?", "ответ": "pek bilgim yok açıkçası", "описание": "güzel cevap", "finartUser": ноль, "recordDate": ноль, «статус»: ноль, "validityStartDate": null, "validityendDate": null, "groupId": 0 } ]

Но часть тела ответа всегда получает 15-байтовый массив длины:

{97, 13, 10, 31, 139, 8, 0, 0, 0, 0, 0, 4, 0, 13, 10}

Первые три байта добавлены сетевым уровнем. Я думаю, это означает длину сообщения. 31 и 139 - это флаги сжатия gzip, которые также относятся к gzip. я не понимаю последние два байта 13 и 10, когда я распаковываю этот 15 байт, он возвращает мне пустую строку.

Это очень важно для нас, как я могу разрешить эти сжатые данные из захваченного пакета?

...