如果是直接用a标签,href指向文件地址可以下载,但是如果调用接口去下
载就不成功了:
后端接口代码如下:
前端代码如下:
此时点击链接触发click事件返回的数据如下
请问是哪里出了问题吗?
如果是直接用a标签,href指向文件地址可以下载,但是如果调用接口去下
载就不成功了:
后端接口代码如下:
前端代码如下:
此时点击链接触发click事件返回的数据如下
请问是哪里出了问题吗?
axios.get(url,{responseType: 'blob'})
.then((response) => {
let name = this.name + '.pdf';
var blob = response.data;
if (window.navigator.msSaveOrOpenBlob) {
navigator.msSaveBlob(blob, name);
} else {
var a = document.createElement('a');
a.download = name;
a.style.display = "none";
a.href = URL.createObjectURL(blob);;
document.body.appendChild(a); // 修复firefox中无法触发click
this.isLoading = false;
a.click();
document.body.removeChild(a)
}
})
.catch(function(error) {
console.log(error);
});
6 回答5.3k 阅读✓ 已解决
9 回答9.5k 阅读
5 回答3.8k 阅读✓ 已解决
3 回答10.6k 阅读✓ 已解决
4 回答8.1k 阅读✓ 已解决
7 回答10.2k 阅读
4 回答7.5k 阅读
downloadRFRepost
方法生成一个a
标签,href
为下载地址,download
属性为文件名,click
它, 然后移除这个标签