0

在 Angular 8 中,调用下面的代码来获取数组缓冲区中的 PDF 内容并使用它生成文档。

  this.http.get(fileLink, { responseType: 'arraybuffer' }).subscribe(function (data) {
  const file = new Blob([data], { type: 'application/pdf' });
  const fileURL = URL.createObjectURL(file);
  const element = document.createElement('a');

  element.setAttribute('href', fileURL); 
  element.setAttribute('target', '_blank');      
  //element.setAttribute('download', fileName);
  element.style.display = 'none';
  document.body.appendChild(element);
  element.click();
  document.body.removeChild(element)
});

但我需要的更改是 - 文件应该在浏览器的另一个选项卡中打开(这已经在工作)并且点击downloadPDF 内的图标,它应该使用原始文件名下载(下载但使用一些随机文件名)。

在另一个选项卡中生成此 PDF 时如何设置文件名。我不能使用锚标记,因为 API 会检查每个请求的Auth 标头。因此 API 请求获取数组缓冲区中的文档内容。

4

0 回答 0