使用axios下载zip文件
时间: 2024-11-30 14:16:26 浏览: 3
axios实现简单文件上传功能
3星 · 编辑精心推荐
Axios是一个基于Promise的HTTP库,用于浏览器和Node.js中处理AJAX请求。要在axios中下载ZIP文件,你需要首先安装axios库(如果尚未安装):
```bash
npm install axios
```
然后,你可以编写一个函数来发送GET请求并使用responseType设置为"arraybuffer",因为ZIP文件本质上是一系列二进制数据。以下是下载ZIP文件的基本步骤:
```javascript
import axios from 'axios';
async function downloadZip(url) {
try {
const response = await axios({
method: 'get',
url,
responseType: 'arraybuffer'
});
// 创建Blob对象,然后创建URL来触发下载
const zipBlob = new Blob([response.data], {type: 'application/zip'});
const urlToDownload = URL.createObjectURL(zipBlob);
// 创建下载链接
const linkElement = document.createElement('a');
linkElement.href = urlToDownload;
linkElement.download = 'file.zip'; // 设置下载文件名
// 触发点击事件模拟用户行为下载文件
linkElement.click();
// 清除临时URL
URL.revokeObjectURL(urlToDownload);
} catch (error) {
console.error('Error downloading ZIP file:', error);
}
}
// 调用函数
downloadZip('https://example.com/file.zip');
```
阅读全文