Angular 6-根据url动态将数据分配给对象标签

时间:2018-08-04 23:34:43

标签: angular

要求

根据用户从PDF列表中选择的内容动态加载PDF文件,并将其显示在对象标签/嵌入标签中。

用户无法下载PDF文件,因此无法下载对象标签。但是,其他安全设置尚未添加。

问题

我不断收到错误消息“ ERROR 错误:尝试在对象标记中加载PDF时,需要一个安全的ResourceURL,并获得了URL(请参见http://g.co/ng/security#xss)。

研究

在问这个问题之前,我已经浏览了几篇文章。

  1. Unsafe value used in a resource URL context with Angular 2

可重复的步骤

我已经创建了stackblitz,您可以看到正在生成的错误。

问题

我不确定我在做什么错了吗?

我尝试了几件事,包括使用Medium.com中的安全管道

1 个答案:

答案 0 :(得分:0)

使用

this.sanitizer.bypassSecurityTrustResourceUrl(url)

DomSanitizer根据情况对各种方法进行分类。

  • bypassSecurityTrustUrl:绕过安全性,并将给定的值信任为安全样式URL,即可以在超链接或<img src>中使用的值。
  • bypassSecurityTrustResourceUrl:绕过安全性并将给定值信任为安全资源URL,即可以用来从中加载可执行代码的位置,例如<script src><iframe src>

在这种情况下,object标签将多媒体内容嵌入到HTML中,因此将其识别为资源类型