下載接口返回的文件流

原生寫(xiě)法

var xhr = new XMLHttpRequest();
            xhr.open("POST", exportOrganExcel);
            xhr.setRequestHeader('Content-Type', 'application/json')
            xhr.responseType = 'blob'    //  這個(gè)必須設(shè)置
            xhr.send(JSON.stringify(params));
            xhr.onload=function(){
                if(xhr.status === 200) {
                    // 通過(guò)Blob轉(zhuǎn)化文件流并下載
                    let blob = new Blob([xhr.response], { type: "application/x-xls" });  // xhr.response--后臺(tái)返回的文件流
                    let link = document.createElement("a");
                    link.href = window.URL.createObjectURL(blob);
                    link.setAttribute('download', `列表名稱(chēng).xls`)
                    document.body.appendChild(link)
                    link.click()
                    document.body.removeChild(link)

                    
                }
            }

axios請(qǐng)求

      axios({
            method: 'get',
            url: `/huishanModel/export/model`,
            responseType: 'blob'
        })
            .then(res => {
                let blob = new Blob([res.data], { type: 'application/x-xls' }); //res.data--后臺(tái)返回的文件流
                let link = document.createElement('a');
                link.href = window.URL.createObjectURL(blob);
                link.setAttribute('download', `文件名稱(chēng).xls`);
                document.body.appendChild(link);
                link.click();
                document.body.removeChild(link);
            })
            .catch(Error => {
                reject(Error);
            });
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容