【发布时间】:2021-04-08 23:58:07
【问题描述】:
我正在开发一个 Angular 应用程序来下载用户详细信息,这些详细信息使用我的 Angular 应用程序作为 word 文档上传到我的本地机器。
我已成功上传并将其保存到我的数据库中,并且我还能够在客户端结果中以字节 [] 的形式获取其数据。
我正在使用 npm i file-saver 在我的 Angular 应用程序中的客户端计算机中执行保存。但是当我尝试这样做时,我的控制台中出现了这个错误
GET 调用 API 后,我的结果的控制台输出如下所示
并使用此代码保存
saveAs(result, name+'_resume.pdf');
我用 result.blob 进行了尝试,但仍然没有运气。有什么想法吗?
在我看到的一些帖子中
它刚刚从当前版本的 Chrome 中删除那么我该如何克服呢?
更新
我做了两件事
我将打字稿代码更改为
this.dataservice.getResume(method, id).subscribe(blob => {
const file = new Blob([blob], { type: 'application/pdf' });
saveAs(file, name+'_resume.pdf');
现在文件以 .pdf 格式下载。但是当我尝试打开文件时,我遇到了无法加载错误:/
请查看我的请求标头
let headers = new HttpHeaders()
.set('Authorization', 'Bearer ' +
this.securityService
.securityObject.bearerToken);
return this.http.get(environment.baseApiUrl + methodName + id, { headers: headers , observe: 'response', responseType: 'blob' });
【问题讨论】:
-
我想看看你在从服务器请求 pdf 时传递的标题,你能发布获取请求的代码和标题
-
嗨,nobal,请查看我更新后的带有请求标头的问题
标签: angular typescript npm blob filesaver.js