import axios from "axios";
import { Message } from "element-ui";
export function output(url, id) {
axios({
method: "post",
url: url,
data: id,
responseType: "blob"
}).then(rs => {
let { data } = rs;
if (data.type === "application/json") {
let reader = new FileReader();
reader.addEventListener("loadend", () => {
const { message } = JSON.parse(reader.result);
Message.error(message)
});
reader.readAsText(data, "utf-8");
} else {
let filename = "";
for (let item in rs.headers) {
if (item == "content-disposition") {
filename = rs.headers[item].split('"')[1];
filename = decodeURI(escape(filename));
}
}
let blob = rs.data;
let url = window.URL.createObjectURL(blob);
let link = document.createElement("a");
link.href = url;
link.download = filename;
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
window.URL.revokeObjectURL(url);
}
});
}