如何通过 Axios 解压缩 Gzip Json 响应

Raj*_*pta 9 compression json gzip response axios

我正在使用 Axios 从 Web 服务器获取 JSON 响应。响应采用压缩的 gzip 格式。如何解压响应并获取 Json 数据。

小智 9

axios 有一个解压缩选项。无需手动解压:

const { data } = await axios.get(url, { responseType: 'arraybuffer', 'decompress': true })

Run Code Online (Sandbox Code Playgroud)

此外,如果您的 Accept-Encoding 标头不包含 gzip (或任何其他压缩格式),您的服务器不应发送压缩内容。


Maj*_*rin 8

const zlib = require('zlib')

let url = "https://example.com/GZ_FILE.gz"

const { data } = await axios.get(url, { responseType: 'arraybuffer' })

zlib.gunzip(data, function (_err, output) {
    console.log(output.toString())
  })
Run Code Online (Sandbox Code Playgroud)