SafeValue必须使用[property] = binding:

时间:2016-09-15 17:52:25

标签: angular

我的输入中出现以下错误:

SafeValue must use [property]=binding: http://www.myurl.com (see http://g.co/ng/security#xss)

我在我的组件中做了:

this.myInputURL = this.sanitizer.bypassSecurityTrustUrl('http://www.myurl.com');

在我的模板中:

Share URL: <md-input [value]="myInputURL" type="text"></md-input>

怎么了?

3 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。虽然我没有完全阅读文档,但似乎无法按预期对组件内的组件进行消毒。

什么起作用,但是在模板中需要清除。例如:

<object type="text/html" [data]="sanitizer.bypassSecurityTrustResourceUrl(app.url)" ngDraggable></object>

在组件中声明了app.url的位置:

public url: SafeResourceUrl = "http://example.com"

希望这会有所帮助。

答案 1 :(得分:0)

更改此

where group = 1

this.sanitizer.bypassSecurityTrustUrl('http://www.myurl.com');

答案 2 :(得分:-1)

同样的事也发生在我身上。这是因为交叉原始限制。只需使用嵌入版本链接 https://www.youtube.com/embed/video-ID ,而不是常规网址 https://www.youtube.com/watch?v=Video-ID

是的,您仍然会收到相同的警告,但您现在可以忽略它,因为一切都会按预期运行。