js处理下载文件流,从后台接收传HTTP输出流,前台js处理
// 获取时间戳
let timestamp=new Date().getTime();
// 获取XMLHttpRequest
let xmlResquest = new XMLHttpRequest();
// 发起请求
xmlResquest.open("POST", ImgUrlPrefix + "/api/export_man_hour", true);
// 设置请求头类型
xmlResquest.setRequestHeader("Content-type", "application/json");
// 设置请求token
xmlResquest.setRequestHeader(
"Authorization",
Vue.cookie.get('token')
);
xmlResquest.responseType = "blob";
// 返回
xmlResquest.onload = function(oEvent) {
let content = xmlResquest.response;
// 组装a标签
let elink = document.createElement("a");
// 设置下载文件名
elink.download = timestamp + ".xlsx";
elink.style.display = "none";
let blob = new Blob([content]);
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
document.body.removeChild(elink);
};
xmlResquest.send();//发送请求

浙公网安备 33010602011771号