目前,我的代码如下所示:
$http.post("/Controller/Method", {
variable: parameter,
variable2: jsonObject,
variable3: parameter3,
variable4: parameter4
}).then(function (response) {
var dlAnchorElem = document.getElementById('downloadAnchorElem2');
var header = response.headers('Content-Disposition');
var filename = header.split("filename=");
if (filename[1].charAt(0) === '"' && filename[1].charAt(filename[1].length - 1) === '"') {
filename[1] = filename[1].substr(1, filename[1].length - 2);
}
dlAnchorElem.setAttribute("href", response.data);
dlAnchorElem.setAttribute("download", filename[1]);
dlAnchorElem.click();
});
这在Chrome中效果很好。不适用于Firefox,Edge或IE8。目前,我正在尝试解决IE8,如果该解决方案兼容,我可以使用它,如果没有,我可以尝试Filesaver或我已经明确看到的其他跨浏览器解决方案之一不适合IE 8。