下载文件downloadFile(url, fi_a标签download跨域">
赞
踩
在使用a标签下载文件时,download属性可以更改下载的文件名,但是当a标签的下载链接跨域时,download属性将不会生效,原因是浏览器无法获取到文件,不能对他进行更改
将文件使用get请求获取到,转为blob,然后获取到blob的url,创建一个新的a标签,赋值download属性,下载。
- //onclick 事件
- <a @click="downloadFile(fileUrl,fileName)">下载文件</a>
-
- downloadFile(url, fileName) {
- var x = new XMLHttpRequest();
- x.open("GET", url, true);
- x.responseType = 'blob';
- x.onload=function(e) {
- var url = window.URL.createObjectURL(x.response)
- var a = document.createElement('a');
- a.href = url
- a.download = fileName;
- a.click()
- }
- x.send();
- },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。