Vue结合后台导入导出Excel问题详解后续
接前几天写的一篇博客 https://www.cnblogs.com/ttjm/p/11307462.html
在ie浏览器测试发现打不开,经调查问题如下
1 如果在本地开发调试,请求接口报错如下

经查是项目启动和接口地址不同源ie有所限制,只需npm run build 放到服务器上测试即可
2 ie对get请求中url长度的限制是2083字节(2k+35)(我项目的参数超过此字节)
3 ie对get请求中参数可能不能有中文,(带验证)
故代码修改如下
axios({
method: 'post',//请求方法改为post
url: 'http://localhost:19090/exportUser',//这个是请求的地址
params: {//这个是请求的参数
email: this.email,
startRegisterDate: this.registerStartTime,
endRegisterDate: this.registerEndTime
},
responseType: 'blob'
}).then((res) => {
let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'});
if (window.navigator.msSaveBlob) { //IE以及IE内核的浏览器使用
try {
window.navigator.msSaveBlob(blob, '支出明细' + '.xls');
// window.navigator.msSaveOrOpenBlob(response, fileNm); //fileNm是文件的名字
} catch (e) {
console.log(e);
}
}else{
const link = document.createElement('a')
link.style.display = 'none'
link.href = URL.createObjectURL(blob);
let num = ''
for(let i=;i < ;i++){
num += Math.ceil(Math.random() * )
}
link.setAttribute('download', '支出明细' + '.xls')
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
}
}).catch(error => {
console.log(error)
})
如果是get请求,请求头不需要额外加参数,直接 window.location.href='http://localhost:19090/exportUser?email='+email+"&start="+start ,(参数中的参数转码或者和后台商量不用中文即可)打开一个地址即可
Vue结合后台导入导出Excel问题详解后续的更多相关文章
- Vue结合后台导入导出Excel问题详解
话不多说,直接上前端代码 axios({ method: 'post', url: 'http://localhost:19090/exportUser',//这个是请求的地址 params: {// ...
- java实现excel的导入导出(poi详解)[转]
java实现excel的导入导出(poi详解) 博客分类: java技术 excel导出poijava 经过两天的研究,现在对excel导出有点心得了.我们使用的excel导出的jar包是poi这个 ...
- [转]mysqldump备份还原和mysqldump导入导出语句大全详解
FROM : http://www.cnblogs.com/zeroone/archive/2010/05/11/1732834.html mysqldump备份还原和mysqldump导入导出语句大 ...
- Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
1.简介 本文主要给大家介绍了关于Laravel 5用Laravel Excel实现Excel/CSV文件导入导出的相关内容,下面话不多说了,来一起看看详细的介绍吧. Laravel Excel 在 ...
- 后台导入导出Excel
Excel导出 定义数据模型 参考财付通的批量提现Excel的格式,定义模型如下 private int recordId; //提现id private String cname; //提现人名称 ...
- java实现excel的导入导出(poi详解)
经过两天的研究,现在对excel导出有点心得了.我们使用的excel导出的jar包是poi这个阿帕奇公司的一个项目,后来被扩充了.是比较好用的excel导出工具. 下面来认识一下这个它吧. 我们知道要 ...
- Java中用JXL导出Excel代码详解
jxl是一个韩国人写的java操作excel的工具, 在开源世界中,有两套比较有影响的API可供使用,一个是POI,一个是jExcelAPI.其中功能相对POI比较弱一点.但jExcelAPI对中文支 ...
- Vue框架下实现导入导出Excel、导出PDF
项目需求:开发一套基于Vue框架的工程档案管理系统,用于工程项目资料的填写.编辑和归档,经调研需支持如下功能: Excel报表的导入.导出 PDF文件的导出 打印表格 经过技术选型,项目组一致决定通过 ...
- C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序
C#中缓存的使用 缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可: <%@ Outp ...
随机推荐
- 在Eclipse中混合Java和Scala编程
1. 新建项目目录 scala-java-mix 2. 创建 src 目录及子目录: mkdir -p src/main/java mkdir -p src/main/scala 3. 在目录 sca ...
- luogu P1850 换教室
题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程. 在可以选择的课程中,有 2n 节课程安排在 n 个时间段上.在第 i (1 ≤ i ≤ n)个时间段上,两节内容 ...
- Webstorm相关设置
[1.快速激活Webstorm] http://jingyan.baidu.com/article/9f63fb919674f2c8400f0e9a.html [2.webstorm 2017 激活破 ...
- Java修炼——手写服务器项目
项目工程总览: 1.Dispatcher类(一个请求与响应就是一个Dispatcher) package com.bjsxt.server; import java.io.IOException; i ...
- LightOj-1027 A Dangerous Maze(期望)
You are in a maze; seeing n doors in front of you in beginning. You can choose any door you like. Th ...
- 洛谷 题解 P2296 【寻找道路】
Problem P2296 [寻找道路] solution 首先声明,这题我用了spfa,而: 关于spfa:它死了. 杀手: NOI 2018−T1 出题人 感谢出题人,没有卡spfa 用时: 20 ...
- ARTS-S golang panic返回默认值
package main import "fmt" func fn_test_panic() (a int) { a = 2 panic("This is panic&q ...
- 深入理解 Java 方法
方法(有的人喜欢叫函数)是一段可重用的代码段.
- Golang 怎么给WaitGroup加超时时间
怎么给WaitGroup加超时时间呢?刚好群里有人问了我这个问题,我就把我的方法在这边贴出来了. var w = sync.WaitGroup{} var ch = make(chan bool) w ...
- 【Java Web开发学习】跨域请求
[Java Web开发学习]跨域请求 ================================================= 1.使用jsonp ===================== ...