前端处理后端接口返回的二进制数据流并下载成文件
1、首先看没处理时接口返回的数据,会发现是乱码的。。。
2、解决乱码需要在请求接口时,加上配置responseType: 'blob',例如在vue中使用axios的http请求
加上之后返回的数据就是这样的
3、接下来就是处理数据文件并下载
const url = window.URL.createObjectURL(res.data) // 将二进制文件转换为可访问的url const a = document.createElement('a') document.body.appendChild(a) a.href = url a.download = 'certificate.tar.gz' a.click() window.URL.revokeObjectURL(url)