我使用内容类型:application / pdf从外部API使用Angular Http接收PDF。所以一个简单的Get Request,没什么花哨的。
现在我需要将其转换为Blob对象。但是,它似乎不起作用。
如何在JavaScript中完成此操作?
以某种方式直接说出let blobFile = new Blob(result)
或let blobFile = new Blob([result])
似乎不起作用。
答案 0 :(得分:0)
如果Content-type
为application/pdf
,则在执行请求时应该能够进行转换:
yourServiceMethod(): Promise<Blob> {
return this.httpClient.get(your-url, { responseType: 'blob' }).toPromise();
}
从那里,您可以使用file-saver之类的实用程序来完成到客户端计算机的下载过程:
import * as FileSaver from 'file-saver';
onDownload(): void {
this.yourService.yourServiceMethod().then(file => {
FileSaver.saveAs(file, fileName);
});
}