小编Rem*_*izZ的帖子

在 PHP 中解码一个 gzip 压缩的字符串

我正在尝试使用 PHP 解码 REST 响应 (YouTrack-API) 的 gzipped 正文。似乎没有任何效果:

  • 从 CURL 自动解码什么都不做
  • 使用 Guzzle 将标头设置为接受编码没有任何作用
  • 简单地将获取的字符串放入 gzdecode() 什么都不做

我尝试过 gzinflate、gzdecode 和它们的一些狂野组合,包括在开始和结束时剥离字节,但没有成功。我绝不是压缩方面的专家,所以我不知道 gzip 压缩的字符串是否可以采用不同的格式,但是任何旧的“在线 gzip 服务”都可以毫无问题地解码字符串

简单示例:此字符串:

H4sIAAAAAAAA//NIzcnJV8jPSVEozy/KSQEARAYhbw8AAAA=
Run Code Online (Sandbox Code Playgroud)

应该输出:

Hello old world
Run Code Online (Sandbox Code Playgroud)

放入我能找到的任何在线转换器,它可以工作,放入任何 PHP 函数:数据错误。PHP 和 gzip 根本不起作用是怎么回事?是否与整个响应被 gzip 或只是内容有关?

php rest gzip guzzle php-curl

1
推荐指数
1
解决办法
2391
查看次数

标签 统计

guzzle ×1

gzip ×1

php ×1

php-curl ×1

rest ×1