存储桶文件不预览,直接下载

 
    // 存储桶文件,不预览,直接下载
    changeBlob (url) {
      return new Promise(resolve => {
        const xhr = new XMLHttpRequest()
        xhr.open('GET', url, true)
        xhr.responseType = 'blob'
        xhr.onload = () => {
          if (xhr.status === 200) {
            resolve(xhr.response)
          }
        }
        xhr.send()
      })
    },
    downLoad () {
      var arr = this.item.url.split('://')
      arr[0] = 'https://'
      this.item.url = arr[0] + arr[1]
      // window.open(this.item.url, '_blank')
      this.changeBlob(this.item.url).then(res => {
        const el = document.createElement('a')
        el.style.display = 'none'
        el.download = this.item.title + '.' + this.item.fileType
        el.setAttribute('target', '_blank')
        el.href = URL.createObjectURL(res)
        document.body.appendChild(el)
        el.click()
        document.body.removeChild(el)
      })
    },
 

 

 

posted @ 2022-06-23 11:33  狸雾  阅读(68)  评论(0)    收藏  举报