后端输出流文件时,浏览器不保存文件,不弹下载框
实践得知:通过ajax请求后端时,浏览器不会保存文件。因为ajax不支持返回二进制流。 我用的是axios也不行
解决方法:
//导出xxx(){console.log(this.data2)Vue.prototype.$axios({xhrFields: {withCredentials: false},method:'post',url: 你的apiurl,responseType: 'blob',//不加这个responseType时,下载的文件可能乱码data:this.data2}).then((res) =>{console.log(res)let blob = new Blob([res.data]);let downloadElement = document.createElement("a");let href = window.URL.createObjectURL(blob); //创建下载的链接downloadElement.href = href;downloadElement.download = 'report.zip'; //下载后文件名document.body.appendChild(downloadElement);downloadElement.click(); //点击下载document.body.removeChild(downloadElement); //下载完成移除元素window.URL.revokeObjectURL(href); //释放掉blob对象})},
这样就会把后端返回的流转换为blob 然后下载
具体这个“ responseType: ‘blob’ ”代表什么:
参考文献:http://www.axios-js.com/zh-cn/docs/index.html
表示服务器响应的数据类型,可以是 ‘arraybuffer’, ‘blob’, ‘document’, ‘json’, ‘text’, ‘stream’。
当然里面的东西,请大家自己参考实际当中自行修改。
参考链接:https://www.cnblogs.com/shangguancn/p/14789220.html
后端输出流文件时,浏览器不保存文件,不弹下载框相关推荐
- vue下载大文件时浏览器不显示下载进度
vue下载大文件时浏览器不显示下载进度 问题描述 最近开发中遇到个问题,项目需要下载大文件(音视频),由于后端给我的是视频的地址而不是直接返回流,所以前端用了XMLHttpRequest获取视频流并实 ...
- 图解使用Win8Api进行Metro风格的程序开发二----使用文件选择器访问和保存文件
我们紧接着上篇,这篇将介绍如何使用文件选择器访问和保存文件 -----------------------------------我是华丽的分割线--------------------------- ...
- linux拷贝文件时如果想保留文件原有的时间属性,可以使用选项,Linux考试题完整版.doc...
PAGE Linux基础知识 自测题 单选题(共计40题) 1. 查看命令cd的绝对路径,结果如下: # which cd /usr/bin/which: no cd in (/usr/kerbero ...
- CAD控件教程:网上打开dwg文件时,对dwg文件路径加密的功能
软件名称: 看楼主头像... 1.增加控件状态栏文字,自定义功能, C++接口为 : CStatusBarInformationReactor::CreateProgressBarText COM ...
- python3文件的编码类型是_Python3.x环境创建Python脚本文件时,需要将文件编码格式设置为...
Python3.x环境创建Python脚本文件时,需要将文件编码格式设置为 答:UTF-8 在黄种人群中有一种叫白化病的隐性遗传病,其致病原因是 答:表皮中的黑色素细胞缺乏酪氨酸酶: 注射用水可通过( ...
- SPSS Modeler导入excel文件时出现“无法读取文件列名”解决方法
SPSS Modeler导入excel文件时出现"无法读取文件列名"解决方法 经过本人多次尝试,终于发现了原因 原因是:excel文件在后台打开了,因此spss modeler读取 ...
- gridview连接接SQL server .mdf文件时没有打开此文件的权限,请与文件所有者或管理员联系以获得相应权限
gridview连接接SQL server .mdf文件时没有打开此文件的权限,请与文件所有者或管理员联系以获得相应权限 类似于 处理方法: 选中要打开的文件右键属性 - 安全- 高级 -添加- 选 ...
- php a链接跳转下载,PHP实现点击a标签的href做链接时,直接保存文件(任何类型),而不是通过浏览器直接打开下载的文件...
之前做项目遇到这样一个问题,就是在php环境下,用a标签的href链接到一个资源,比如是mp3或者lrc文件时,点击之后不是出现保存文件的提示,而是调用本地程序打开文件或者直接在浏览器上解析.网上说可 ...
- PHP实现点击a标签的href做链接时,直接保存文件(任何类型),而不是通过浏览器直接打开下载的文件
之前做项目遇到这样一个问题,就是在php环境下,用a标签的href链接到一个资源,比如是mp3或者lrc文件时,点击之后不是出现保存文件的提示,而是调用本地程序打开文件或者直接在浏览器上解析.网上说可 ...
最新文章
- C# Task注意事项
- 在滴滴和头条干了 2 年后端开发,太真实…
- java 内存泄漏_Java开发者必须知道的内存泄漏问题
- python如何输出结果_如何在python2.7中打印输出结果?
- Lync2013 升级错误总结2 Lync2013 PC和手机客户端登录无法验证
- idea没有代码自动提示功能和包自动引入不了问题
- 从王者荣耀看设计模式(四.简单工厂模式)
- 【C++】指针遍历二维数组若干种方法小结
- 前端跨域问题,以及ajax,jsonp,json的区别
- linux下设置set位权限,网络安全系列之四十 在Linux中设置SET位权限
- oracle ebs 接收数量,[zz]Oracle EBS API: 库存数量查询API示例
- thinkphp自定义汉字转拼音类
- HBuilder X 设置保存时编译
- 360机器学习算法工程师面经
- 生活随记 - 方便面
- Word控件Spire.Doc 【页面背景】教程(1) ;C#/VB.NET:在 Word 中插入水印
- 22年上半年网络工程师考前知识集锦
- Layui的eleTree树式选择器使用
- 循序渐进理解RTFM算法
- 去BAT,你应该要看一看的面试经验总结