gz、zip等压缩文件postman成功下载但是前端项目中下载解压失败

原因:

  • axios的配置错误和版本过低
  • 错误的前端代码尝试通过axios.post()下载文件,但未正确设置responseTypeContent-Type
  • 解决方案:更新axios版本并调整axios请求方式,确保responseType为'arraybuffer'
bash 复制代码
 const raw = JSON.stringify({
    //查询参数
  })

  axios({
    method: 'post',
    url: `请求链接`,
    data: raw,
    responseType: 'arraybuffer',	//1、注意:responseType arraybuffer
    headers: {
      'Content-Type': 'application/json; application/octet-stream', 	//2、注意Content-Type其他的
      Authorization:
        'Bearer xxxx'
    }
  }).then(function (data) {
    console.log(data)
    const blob = new Blob([data.data], { type: 'application/gzip' })	//'application/zip'
    const downloadUrl = window.URL.createObjectURL(blob)
    const link = document.createElement('a')
    link.href = downloadUrl
    link.setAttribute('download', 'file.gz') //file.zip
    document.body.appendChild(link)
    link.click()
    document.body.removeChild(link) //下载完成移除元素
    window.URL.revokeObjectURL(downloadUrl) //释放blob对象
  })
相关推荐
abigale0310 小时前
开发实战 - ego商城 - 7 地址管理模块
前端·uni-app·node.js
焦糖小布丁10 小时前
泛域名SSL证书:一张证书保护所有子域名,企业网站必选
前端
SamsongSSS10 小时前
JavaScript逆向Vue处理事件和捕获错误的核心逻辑
前端·javascript·vue.js·逆向
笨笨狗吞噬者11 小时前
【uniapp】解决小程序分包下的json文件编译后生成到主包的问题
前端·uni-app
IT_陈寒11 小时前
Redis 7个性能优化技巧,让我们的QPS从5k提升到20k+
前端·人工智能·后端
.又是新的一天.11 小时前
健身房预约系统SSM+Mybatis(五、预约展示)
前端·mybatis
晴殇i12 小时前
DOM嵌套关系全解析:前端必备的4大判断方法与性能优化实战
前端·javascript·面试
似水流年_zyh12 小时前
canvas涂抹,擦除功能组件
前端
胖虎26512 小时前
前端多文件上传核心功能实现:格式支持、批量上传与状态可视化
前端
胖虎26512 小时前
Vue2 项目常用配置合集:多语言、SVG 图标、代码格式化、权限指令 + 主题切换
前端