const token="自行定義";//若是有 /** * 向指定路徑發送下載請求 * @param{String} url 請求路徑 */ function downLoadByUrl(url){ var xhr = new XMLHttpRequest(); //GET請求,請求路徑url,async(是否異步) xhr.open('GET', url, true); //設置請求頭參數的方式,若是沒有可忽略此行代碼 // xhr.setRequestHeader("token", token); //設置響應類型爲 blob xhr.responseType = 'blob'; //關鍵部分 xhr.onload = function (e) { //若是請求執行成功 if (this.status == 200) { var blob = this.response; var filename = "我是文件名.xxx";//如123.xls var a = document.createElement('a'); blob.type = "application/octet-stream"; //創鍵臨時url對象 var url = URL.createObjectURL(blob); a.href = url; a.download=filename; a.click(); //釋放以前建立的URL對象 window.URL.revokeObjectURL(url); } }; //發送請求 xhr.send(); }