要求:
从服务器以arrayBuffer的形式获取pdf,并在角度应用程序中将pdf显示为叠加层。
方法:
我从服务中获取pdf文件作为arrayBuffer。我正在使用
创建一个bloblet file = new Blob([data.data], {type: 'application/pdf'});
现在我使用
创建对象Urllet fileURL = URL.createObjectURL(file);
将此网址分配给范围,以便模板可以使用
this.pdf.url = this.$sce.trustAsResourceUrl(fileURL);
在模板中我添加了一个iFrame
<iframe ng-src="{{brief.pdf.url}}" style="width:100%;height:600px;" frameborder="0" scrolling="no">
<p>It appears your web browser doesn't support iframes.</p>
</iframe>
这在Chrome和FF中运行良好,但在IE11中不起作用 在Chrome和FF中,形成的blob url是
团块:HTTP%3A //本地主机%3A81 / 0dceebf5-9d38-4366-8f65-ad12616533b4
但在IE11中形成的网址是
团块:0dceebf5-9d38-4366-8f65-ad12616533b4
如何解决此问题?