我在angularjs中有以下代码,它应该从web api方法接收一个字节数组,然后下载该文件。
此代码在最新的Google中运行完美,但是当我在最新的FireFox中尝试时,代码执行时没有错误,但是没有下载。同样在IE 11中,这种下载不会发生。
问题:如何让这个blob代码在最新的FireFox和IE 10/11中运行?
return myDataService.getByteArray()
.then(function (data) {
var byteArray = new Uint8Array(data);
var element = angular.element('<a/>');
element[0].href = window.URL.createObjectURL(new Blob([byteArray],
{ type: 'application/octet-stream' }));
element[0].download = 'mydatareport.pdf';
element[0].click();
});
更新1 :
在IE 10/11中,所有代码都会在没有错误的情况下执行,直到调用了元素[0] .click(),并发生以下错误。