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();//发送请求
posted @ 2019-08-23 09:55  freedoma  阅读(794)  评论(0)    收藏  举报