Angular 如何撤消绕过SecurityTrustHTML,即将SafeValue转换回字符串
我正在生成html,并使用Angular 如何撤消绕过SecurityTrustHTML,即将SafeValue转换回字符串,angular,html-sanitizing,Angular,Html Sanitizing,我正在生成html,并使用 let data = '<font color=blue>hello world</font>'; this.safevalue = this.domSanitizer.bypassSecurityTrustHtml(data); 但这会将数据设置为如下字符串 'SafeValue must use [property]=binding: (see http://g.co/ng/security#xss)' 这是没有帮助的我已经翻遍了,似乎
let data = '<font color=blue>hello world</font>';
this.safevalue = this.domSanitizer.bypassSecurityTrustHtml(data);
但这会将数据设置为如下字符串
'SafeValue must use [property]=binding: (see http://g.co/ng/security#xss)'
这是没有帮助的我已经翻遍了,似乎不可能从
安全值
获取原始字符串。所以我想我必须为所有不安全的值保留并行数据数组 我不知道您是否已经找到了修复方法,但是,如果您只是想要原始值,标记为安全:
var yourString = this.domSanitizer.sanitize(SecurityContext.HTML, data)
你用
console.log(this.safevalue)
得到了什么?@GünterZöchbauer我得到了与toString相同的东西。这有用吗?如果数据是“Hello world”,那么yourString.toString()
的值也将是“Hello world”?是的,是的。这就是我在这里申请的方式。试试看,如果你需要帮助,请告诉我!您只需使用字符串(不需要.toString(),它是一个slready字符串)
var yourString = this.domSanitizer.sanitize(SecurityContext.HTML, data)