如何在前端使用Angular5管理responseType ='blob'

时间:2018-04-25 07:37:52

标签: xml angular typescript blob

我想下载一个包含文字doc.pdf的{​​{1}}。当我尝试下载到zip文件时,我的文件有一些files.xml就像在这张照片中 enter image description here

您能否建议一下如何用pdf格式转换这个文件?

请关注我的代码:

Component.ts

'My first file download'

service.ts:

  export(id: string) {
    this.ss.download(id)
      .subscribe(data => { console.log(`excel data: ${data}`); FileSaver.saveAs(data, 'doc.zip') },
        error => console.log('Error downloading the file.'),
        () => console.log('Completed file download.'));
  }

必需参数是:方法获取。参数需要在标题中发送。

1 个答案:

答案 0 :(得分:0)

我不知道这是否会对你有所帮助(我不太喜欢你的工具)

您下载的文件是DOCX格式。这是现代的MS-Word格式。这种格式 - 即使它有不同的扩展名 - 一个简单的ZIP文件。

任何压缩文件开头的PK都是魔术代码,告诉消费者这是什么类型的文件。

“PK”回到“PKWARE”并指向Phil Katz,他是发明zip格式的人之一。

压缩文件 - 与任何其他文件一样 - 只是一个字节。消费者必须知道,如何阅读和解释这一点。

您应该尝试将字节流完全写入文件,将其命名为“Yet.docx”并尝试使用MS-Word打开它。

如果这没有帮助,字节流可能会被压缩,或以某种方式自行编码......至少你向我们展示的图片看起来并不像这样。

请勿尝试将复制并粘贴的字符带到任何类型的编辑器中。这样的文件有几个不可见的字符会丢失......拿出字节并存储它们就像你得到它们一样(和存储JPEG一样)。