我想下载通过AJAX加载的PDF文件。我试图通过使用FileSave.js库来做到这一点。以下代码有效,但是当我打开PDF文件时,它完全是空的。我注意到PDF文件的编码为UTF-8,但是端点返回的是ANSI编码的PDF。
为了下载具有正确编码的文件,我该怎么办?
var downloadReport = function() {
$http.get("../api/report").then( function(response) {
var blob = new Blob([response.data], {
type: "application/pdf",
});
saveAs(blob, fileName);
});
};
最终,我自己发现了问题。我必须将添加responseType: "arrayBuffer"
到http请求:
$http({
method: 'POST',
url: '../api/report',
responseType: "arraybuffer"
}).then( function(response) {
var blob = new Blob([response.data], {
type: "application/pdf",
});
saveAs(blob, fileName);
});
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句