【问题标题】:How to decompress Gzip Json response via Axios如何通过 Axios 解压 Gzip Json 响应
【发布时间】:2020-11-03 01:24:27
【问题描述】:

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

【问题讨论】:

    标签: json axios compression gzip response


    【解决方案1】:
    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())
      })
    

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-27
        • 2010-09-19
        • 2023-03-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多