隨筆記錄40 ajax下載文件

            var url = '******';//請求后端的矮口地址
            var xhr = new XMLHttpRequest();
            xhr.open('GET', url, true); // 也可以使用POST方式, 根據(jù)接口
            // xhr.setRequestHeader("token", sessionStorage.getItem("id"));//需要在請求頭里給后端傳的用戶信息
            xhr.responseType = "blob"; // 返回類型blob
            //定義請求完成的處理函教,請求前也可以增加加裁框/禁用下裁按鈕邏輯
            xhr.onload = function () {
                //請求完成
                if (this.status === 200){
                    //返回200
                    var blob = this.response;
                    var reader = new FileReader() ;
                    reader.readAsDataURL(blob); // 轉(zhuǎn)煥為ase64,可以直接放入a表href
                    reader.onload = function (e) {
                        layer.close(loadindex);
                        //轉(zhuǎn)換完成,創(chuàng)建一個日標(biāo)簽用于下載
                        var a = document.createElement('a');
                        a.download = '我是文件名.zip';
                        a.href = e.target.result;
                        $("body").append(a); // 修復(fù)firefox 中無法觸發(fā)click
                        a.click();
                        $(a).remove();
                    }
                }
            }
            //發(fā)送ajax 請求
            xhr.send()

參考自:https://blog.csdn.net/m0_65376942/article/details/124321161

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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