Я пытаюсь декодировать сжатое тело ответа REST (YouTrack-API) с помощью PHP. Кажется, ничего не работает:
- Автоматическое декодирование из CURL ничего не делает
- Использование Guzzle с заголовками, настроенными на принятие кодировки, ничего не дает
- Простое помещение полученной строки в gzdecode () ничего не делает
Я пробовал gzinflate, gzdecode и некоторые их дикие комбинации, включая удаление байтов в начале и в конце, но безуспешно. Я ни в коем случае не эксперт в сжатии, поэтому я понятия не имею, существуют ли даже разные форматы, которые может принимать gzip-строка, но любая старая `` онлайн-служба gzip '' может декодировать строку без каких-либо проблем.
Простой пример: Эта строка:
H4sIAAAAAAAA//NIzcnJV8jPSVEozy/KSQEARAYhbw8AAAA=
должен выводить:
Hello old world
Поместите в любой онлайн-конвертер, который я смог найти, он работает, поместите в любую из функций PHP: ошибка данных. В чем дело, что PHP и gzip вообще не работают? имеет ли это какое-то отношение к сжатию всего ответа или только к его содержимому?