How to decompress Gzip Json response via Axios

Viewed 5411

I am using Axios to get the JSON response from the web server. The response is in compressed gzip format. How can I decompress the response and get the Json Data.

2 Answers

axios has a decompress option. No need to decompress it manually:

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

Also, your server should never sent compressed content if your Accept-Encoding header does not contain gzip (or any other compression format).

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())
  })
Related