【问题标题】:Angular: Sanitizing an img tag within sanitized HTMLAngular:在已清理的 HTML 中清理 img 标签
【发布时间】:2018-02-13 04:33:24
【问题描述】:

我有一个组件使用由受信任的外部来源接收的 HTML sn-p。我正在使用 Angular 的 DomSanitizer 和 bypassSecurityTrustHtml 方法来处理包含 sn-p 的变量,然后再使用 innerHTML 将其绑定到我的模板。

我遇到的问题是这个 sn-p 包含一个 img 标签,其 src 属性是一个外部域/url。所以本质上我还需要通过使用类似 bypassSecurityTrustResourceUrl 的东西来清理它。

我尝试将 bypassSecurityTrustResourceUrl(通过将其转换为字符串)嵌套在 bypassSecurityTrustHtml 方法中,但这似乎不正确,也不起作用。

以前有人遇到过这类问题吗?

这是一个快速 Stackblitz 演示我想要实现的目标: https://stackblitz.com/edit/angular-dqvhbc

【问题讨论】:

标签: javascript angular


【解决方案1】:

您提供的img 标签不正确。

<img src="https://www.google.com.au/logos/doodles/2018/doodle-snow-games-day-7-5009413877268480.2-s.png" >

最初只是&lt;img="URL"&gt;

这里是Updated stackblitz URL

【讨论】:

  • 嘿,对不起,这是我的错字。但是,您确实帮助我找到了根本原因并解决了我的问题,这实际上并不是由于消毒不起作用,效果很好 - 在将 html 传递给模板之前,我必须解码一些 html 实体,所以谢谢!我认为图像是问题的原因是因为图像的 html 标签是 html 编码的,一旦我修复了没有问题。 :-/
猜你喜欢
  • 2011-05-04
  • 1970-01-01
  • 2015-10-16
  • 1970-01-01
  • 2015-08-08
  • 2010-11-05
  • 1970-01-01
  • 1970-01-01
  • 2012-06-28
相关资源
最近更新 更多