一、Axios下载Excel
Axios是一个可以使用Promise对象实现HTTP客户端的JS库。下载Excel最常用的一种方式就是将后端返回的二进制流转换成Blob对象,然后再通过URL.createObjectURL方法生成下载链接,最后触发a标签的click事件进行下载。
代码示例:
axios.get(url, {
responseType: 'blob'
}).then(response => {
const url = window.URL.createObjectURL(new Blob([response.data]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'file.xlsx');
document.body.appendChild(link);
link.click();
});
二、下载 PDF 文件
如下示例所示,在axios下载PDF文件的过程中,在responseType配置项中设置’arraybuffer’,然后对response.data进行Blob的实例化。
代码示例:
axios.get(url, {
responseType: 'arraybuffer'
}).then(response => {
const blob = new Blob([response.data], { type: 'application/pdf' });
const url = window.URL.createObjectURL(blob);
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', 'file.pdf');
document.body.appendChild(link);
link.click();
});
三、Axios怎么读
在使用Axios进行读取数据时,需要使用到axios.get、axios.post等请求方式。针对读取数据,axios.get是使用频率最高的方式。
代码示例:
axios.get('/api/data')
.then(response => {
console.log(response.data);
}).catch(error => {
console.error(error);
})
四、Axios官网
Axios GitHub官网上有详细的文档和示例,可以方便地学习和使用此JS库。
官网地址:https://github.com/axios/axios
五、Axios跨域
在进行跨域请求时,需要后端同意响应特定的HTTP响应头。
后端配置示例:
// 允许跨域请求的域名和端口
response.setHeader('Access-Control-Allow-Origin', '*');
// 允许跨域请求的HTTP方法
response.setHeader('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE');
// 允许跨域请求的HTTP头
response.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
然后通过axios的请求方式进行跨域请求,示例代码如下:
axios.get('http://example.com/resource', {
headers: { Authorization: 'Bearer ' + token }
}).then(response => {
console.log(response.data);
}).catch(error => {
console.error(error);
});
六、美国Axios网站
美国的axios网站是一家总部位于纽约市的新闻网站,提供美国政治、商业和技术领域深入报道。
网址:https://www.axios.com/
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/286208.html
微信扫一扫
支付宝扫一扫