修改fileName不生效解决办法(跨域问题)

时间:2025-04-05 12:43:07

众所周知,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()
    },