当前位置: 首页 > 知识库问答 >
问题:

PDF Blob未显示内容,角度2

林俊英
2023-03-14
createPDF(customerServiceId: string) {
   console.log("Sending GET on " + this.getPDFUrl + "/" + customerServiceId);

   this._http.get(this.getPDFUrl + '/' + customerServiceId).subscribe(
       (data) => {
            this.handleResponse(data);
         });
}
handleResponse(data: any) {
     console.log("[Receipt service] GET PDF byte array " + JSON.stringify(data));

     var file = new Blob([data._body], { type: 'application/pdf' });            
     var fileURL = URL.createObjectURL(file);
     window.open(fileURL);
 }

共有1个答案

夏才
2023-03-14

我在下载和显示PDF的内容时遇到了很多问题,我可能浪费了一两天的时间来修复它,所以我将发布如何成功下载PDF或在新选项卡中打开它的工作示例:

MyService.ts

downloadPDF(): any {
        return this._http.get(url, { responseType: ResponseContentType.Blob }).map(
        (res) => {
            return new Blob([res.blob()], { type: 'application/pdf' })
        }
}

MyComponent.ts

this.myService.downloadPDF().subscribe(
        (res) => {
            saveAs(res, "myPDF.pdf"); //if you want to save it - you need file-saver for this : https://www.npmjs.com/package/file-saver

        var fileURL = URL.createObjectURL(res);
        window.open(fileURL); / if you want to open it in new tab

        }
    );
 类似资料:
  • 角度HTTP请求被阻止-显示混合内容。 但当我通过浏览器URL访问时,内容会显示出来。 角度代码为: 控制台错误显示为: 混合内容:https://dash-thaidash.c9users.io/#/app/tonnage页面通过HTTPS加载,但请求不安全的XMLHttpRequest终结点http://crms.ttteamthoi.in/get_timespent_br。此请求已被阻止;内

  • 就像渲染器和编辑器听起来一样简单,尽管有十几个这样的书签,我还是回到类似的问题上,我缺少了一些基本的东西。我想把任何旧的文本文件拖到一个2列的JTable中,让第一列显示文件名,第二列包含一个JComboBox,它的选项取决于拖动文件的内容。(在下面的代码中,我只是伪造了几个条目。) 这一切都正常工作,直到我从一个组合框中做出一个选择--该选择不显示--只是一个组合框,正确填充但没有做出选择。我知

  • 问题内容: Angular没有添加正确的内容类型选项,我尝试了以下命令: 上面的代码生成以下http请求: 如您所见,内容类型不是“ application / json”,而是“ application / xml”。我在这里想念什么吗? 问题答案: 您需要在请求中包含一个正文。Angular将删除内容类型标头。 将参数添加到。

  • 显示Flash®内容   使用PSP-1000系列时,选择PSP™主机之(设定) > (主机设定),并将[启动Flash® Player]设定为有效后,即能显示支持Macromedia® Flash®之内容。 提示 已安装Macromedia® Flash® Player 6(不支持部份机能)。 设定为有效却仍无法显示Flash®内容时,请进入选单列之[工具] > [设定] > [显示设置]并变更

  • 问题内容: 我已经开发了一个小应用程序来跟踪我的日常工作活动,该工具包含两个类: 执行者 UIProgress 我的目标是创建一个ProgressBar来更新执行状态,使用的逻辑如下所示, 根据Executor类中定义的executeTask(),我创建了UIProgress对象。 UIProgress类扩展了JFrame。创建一个面板,其中包含带有一个图像的标签和进度条。我已经在此类中定义了一个

  • 我开发了一个小应用程序来跟踪我的日常工作活动,该工具包含两个类: 遗嘱执行人 我的目标是创建一个更新执行状态的ProgressBar,下面给出了使用的逻辑, 从Exector类中定义的执行任务()中,我创建了UIProgress对象。 UIProgress类扩展了JFrame。创建一个包含带有一个图像和进度条的标签的面板。我在这个类中定义了一个方法updateProgress,它设置了进度条的值。