这个问题可能是因为服务端未正确设置响应头的 content-type 造成的。为了解决这个问题,可以使用 axios 的 responseType 属性设置响应数据的类型为 'blob',然后在请求完成后使用 Blob 类型的构造函数创建一个新的 Blob 对象。以下是代码示例:
axios({
method: 'get',
url: 'your/api/endpoint',
responseType: 'blob'
}).then(response => {
const blob = new Blob([response.data], { type: response.headers['content-type'] })
// 对 Blob 进行操作
}).catch(error => {
console.log(error)
})
在上面的代码中,我们设置了 responseType 为 'blob',然后在响应数据返回后,使用 new Blob() 创建了一个新的 Blob 对象,并从响应的 headers 中获取了 content-type。接下来就可以对 Blob 进行操作了。