使用JavaScript進行文件下載


通過創建 a 標簽進行下載

后端返回數據:

{
    "result": {
        "fileName":"xxxx.xls",
        "fileData":"data:application/vnd.ms-excel;base64,0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAOwADAP7/CQAGAAAAAAAAAAAAAAABAAAAPgAAAAAA....."
    }
}

前端處理:

/* 模擬 a 標簽的點擊下載*/
let {result} = response
let {fileName, fileData} = result

let a = document.createElement("a")
a.href = fileData
a.download = fileName

document.body.appendChild(a)

a.click()
a.remove()

跨域下載文件

Fetch API 提供了一個 JavaScript接口,用於訪問和操縱HTTP管道的部分,例如請求和響應。它還提供了一個全局 fetch()方法,該方法提供了一種簡單,合理的方式來跨網絡異步獲取資源。

fetch(遠程文件URL).then(res => res.blob().then(blob => {
    var a = document.createElement('a');
    var url = window.URL.createObjectURL(blob);
    var filename = row.title;
    a.href = url;
    a.download = filename;
    a.click();
    window.URL.revokeObjectURL(url);
}))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM