axios封装blob数据返回
时间: 2023-08-12 20:56:39 浏览: 43
当使用axios封装请求时,如果需要返回Blob数据,可以通过设置`responseType`为`blob`来实现。以下是一个简单的示例:
```javascript
import axios from 'axios';
async function getBlobData(url) {
try {
const response = await axios.get(url, {
responseType: 'blob', // 设置响应类型为blob
});
return response.data; // 返回Blob数据
} catch (error) {
console.error(error);
throw new Error('Failed to fetch blob data');
}
}
// 使用示例
const url = 'http://example.com/example.pdf';
getBlobData(url)
.then(blobData => {
// 在这里处理返回的Blob数据
console.log(blobData);
})
.catch(error => {
console.error(error);
});
```
在上面的示例中,我们使用`axios.get`方法发送了一个GET请求,并将`responseType`设置为`blob`。然后,我们通过访问`response.data`来获取返回的Blob数据。
请注意,在使用此方法时,确保服务器正确地设置了响应的Content-Type为对应的Blob类型,例如`application/pdf`。