vue通过接口直接下载java生成好的Excel表格案例
网络编程 2021-07-04 14:06www.168986.cn编程入门
这篇文章主要介绍了vue通过接口直接下载java生成好的Excel表格案例
通过浏览器直接访问导出接口就会自动下载创建好的 Excel 表格。我们在vue里使用axios请求接口,一般是处理json数据,如果要处理文件流数据,需要做下特殊处理即可直接下载文件。
假如 下载Excel接口为/apis/downExcel,则请求如下
import axios from 'axios' export const exportFile = params => { var param = new URLSearchParams() param.append('beginTime', params.beginTime) param.append('endTime', params.endTime) return axios({ method: 'post', data: param, url: '/apis/downExcel', responseType: 'blob' }) }
下载按钮触发下载方法如下
downExcel() { var params = { beginTime: this.times[0], endTime: this.times[1] }; exportFile(params).then( data => { / 获取生成设置好的文件名 / var filename = data.headers["content-disposition"]; filename = filename.split("=")[1]; filename = decodeURIComponent(filename, "utf-8"); / 接收文件流 / const blob = new Blob([data.data]); let url = URL.createObjectURL(blob); / 模拟浏览器操作Document,并模拟下载动作 / let link = document.createElement("a"); link.style.display = "none"; link.href = url; link.setAttribute("download", filename); document.body.appendChild(link); link.click(); }, error => { console.log(error); this.$message.error("下载异常,请稍后再试"); }); }
这样就可以在vue项目中完整下载Excel接口,vue也有生成Excel的插件,接收后台的json数据然后在前端生成并下载。
补充知识Vue实现通过后端接口导出Excel表格
需求后端提供下载接口,返回二进制文件流,前端导出为xlsx格式的Excel表格
实现
1、按钮调用下载接口
2、new Blob导出
PS
1、第一步请求接口时,注意要设置请求responseType为blob类型,否则下载后,显示格式错误,无法打开
2、new Blob请求是,注意修改type类型为application/vnd.ms-excel
以上这篇vue通过接口直接下载java生成好的Excel表格案例就是长沙网络推广分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持狼蚁SEO。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指