问题标签 [angular-dom-sanitizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3174 浏览

css - 使用 Angular 的 DomSanitizer 清理 CSS

我想在将一些 CSS 注入我的应用程序的<style>标签之前对其进行清理<head>

我像这样通过 DomSanitizer 传递它:

const safeCSS = this.domSanitzer.sanitize(SecurityContext.STYLE, css);

但是我在控制台中收到此错误消息,它认为我的 CSS 不安全。

WARNING: sanitizing unsafe style value [MY_CSS_HERE]

我想了解为什么 Angular 认为我的 CSS 不安全。

我把我的 CSS 放在 codepen 上,因为它很大,但很简单。

https://codepen.io/stevedeighton/pen/OvgLVb

有任何想法吗?

谢谢!

0 投票
1 回答
8394 浏览

javascript - Angular、DomSanitizer、bypassSecurity 脚本

我正在玩bypassSecurityTrust*Angular的功能。目标是让script标签在页面上执行。但它要么不断用消息进行消毒

WARNING: sanitizing HTML stripped some content

或者我在控制台中看到

SafeHtmlImpl {changingThisBreaksApplicationSecurity: "<script>alert(1)</script>.

目标是让这个工作。

我目前使用和尝试过的:

和模板html:

我尝试了两者都sanitize应该SecurityContext.NONE可以查看代码bypassSecurityTrustHtml(value). 上面的代码受到这个答案的启发。

关于如何执行该 JavaScript 的任何想法?

0 投票
0 回答
553 浏览

angular - 管道内的Angular2未定义DomSanitizer

我正在尝试使用 DomSanitizer 来确保我的 URL 安全。我已按照以下步骤操作,如下所示:

该记录值没问题,但我收到错误消息:

这对我来说意味着我的对象并没有全部设置好。我已经检查过正在调用“构造函数”,那么我在这里缺少什么?

0 投票
1 回答
2914 浏览

angular - Angular 5:显示来自服务器响应的 html 和 xml

我有一个场景,我需要从服务器发送的相同字符串中显示 html 和 xml。

来自服务器的回复如下所示:

我试过了:

html:

我收到此错误:

而当我使用[innerHTML]而不是[innerText]xml时已经被清除了。

如何显示示例 xml 代码以及解析 html 标签(如<b>标签)?至少我怎样才能摆脱这个错误?

0 投票
0 回答
52 浏览

angular - 使用第三方库缩放图像时,Angular5 / Firebase 存储不起作用

我正在使用 Angular5 和 Google Cloud Firestore 作为数据库来构建电子商务。在产品页面中,我想在鼠标悬停图片时缩放照片。这是问题所在:

作为缩放库,我使用的是angular2-image-zoom。它适用于我项目内部的图像,但是当我传递外部图像源(来自 Firebase 存储时,它不起作用)。

代码示例:

product-page.component.ts

我已经尝试过各种 DomSanitizer 来绕过 url、style、secureSrc,但它们都不起作用。大家有什么建议吗?

0 投票
1 回答
973 浏览

angular5 - Angular 5 bypassSecurityTrustUrl 不起作用

我正在尝试在我的 Angular 5 应用程序上制作一个视频,其 url 来自其他站点。视频未播放。

在视图中,我试图将 src 添加到 videoUrl。

0 投票
1 回答
507 浏览

html - 如何将使用 innerHTML 注入的样式包含到 DOM 元素及其子元素中?

我有一个从第三方获得的 HTML 页面。

问题是 HTML 带有样式标签内的 CSS。CSS 是一种通用的,他们在正文上添加自己的字体和自己的字体大小。

我正在使用带有 bypassSecurityTrustHtml 的 dom sanitizer 在我的应用程序上显示 HTML。

现在添加新的 HTML 后,我的应用程序样式因此受到影响。除了在 iframe 中添加第三方 URL 外,我怎样才能避免这种情况?

0 投票
1 回答
2451 浏览

angular - Jasmine 无法识别 Angular 的 DomSanitizer

我正在使用 Jasmine 对 Angular 5 应用程序进行单元测试。我到了需要测试一个依赖于的函数的地步DomSanitizer

我验证了这个函数可以完美运行,这意味着它DomSanitizer已经在构造函数中并且它的语法是正确的。

我的单元测试如下:

此外,DomSanitizer是的一部分TestBed providers

然而,Jasmine 在对函数进行单元测试时抛出了这个错误:

有任何想法吗?

谢谢!

0 投票
1 回答
1007 浏览

angular - 是否可以在使用 Angular 中的 DomSanitizer 管道清理的字符串中包含并发出事件?

我试图将单击事件传递给使用 DomSanitizer 呈现的按钮。但是单击按钮时不会调用有界方法。

组件.ts

组件.html

管道.ts

按钮以样式正确显示。但是点击事件没有被触发。

是否有任何解决方案或替代解决方案?

0 投票
2 回答
5942 浏览

angular - 在 Angular 4 中向 DOM 元素添加事件监听器

我想向Angular 组件内的iframe 加载事件添加一个事件侦听器。

我知道我可以使用ViewChild装饰器,然后访问element.nativeElement.addEventListener

但是,为了在 Angular 内部处理 DOM 时遵守最佳实践,访问 nativeElement 上的 addEventListener 仍然被认为是平台无关的吗?还是我将我的应用程序绑定到纯浏览器应用程序?

谢谢