众所周知,a标签中download属性可以更改下载文件的文件名。
但是只适用于同源文件,如果是跨域的话,download属性就会失效。
解决方法一:使用XMLHttpRequest
downloadFile(url, fileName) {
var xml = new XMLHttpRequest()
('GET', url, true)
= 'blob'
= function() {
var url = ()
var a = ('a')
= url
= fileName
()
}
()
},
解决方法二:使用axios
import axios from 'axios'
downloadFile(url, fileName) {
axios
.get(url, { responseType: 'blob' })
.then(res => {
const blob = new Blob([])
const link = ('a')
= (blob)
= fileName
()
()
})
.catch()
},