在 Angular 的新选项卡中打开 PDF
Posted
技术标签:
【中文标题】在 Angular 的新选项卡中打开 PDF【英文标题】:Open PDF in new tab in Angular 【发布时间】:2021-12-02 22:18:10 【问题描述】:我正在使用 angular8 和 spring boot 下载文件。我想打开我保存在新标签中的 PDF 文件,你能帮我而不是下载它们吗?
FileDownload(fileId: number, headers): Observable<any>
return this.http.get(apiHost + '/downloadFile/' + fileId, headers, responseType: 'blob' as 'json' );
downloadFile(event): void
const headers = new HttpHeaders();
this.service.FileDownload(event.fileId, headers).subscribe(response =>
let dataType = response.type;
let binaryData = [];
binaryData.push(response);
let downloadLink = document.createElement('a');
downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, type: dataType ));
if (event.fileName)
downloadLink.setAttribute('download', event.fileName);
document.body.appendChild(downloadLink);
downloadLink.click();
)
更新(工作代码)
this.service.FileDownload(event.fileId, headers).subscribe(response =>
let dataType = response.type;
let binaryData = [];
binaryData.push(response);
const fileURL = URL.createObjectURL(new Blob(binaryData, type: dataType ));
window.open(fileURL, '_blank');
)
Spring Booot (inline)
response.setHeader("Content-Disposition", String.format("inline; filename=\"%s\"", fileName));
【问题讨论】:
【参考方案1】:window.open(downloadLink.href, '_blank')
【讨论】:
感谢您的回答,但它再次下载,它没有打开一个新标签。以上是关于在 Angular 的新选项卡中打开 PDF的主要内容,如果未能解决你的问题,请参考以下文章