解决方法@H_404_6@
从dart使用
HtmlEscape:convert.
import 'dart:convert' show HtmlEscape;
void main() {
var unsafe = 'Hello <script>world</script>';
var sanitizer = const HtmlEscape();
print(sanitizer.convert(unsafe));
}
上面的应用程序打印:
Hello <script>world</script>
默认行为是转义撇号,大于/小于,小于引号和斜杠.
如果要控制转义的内容,可以使用HtmlEscapeMode创建新的HtmlEscape.
例如,要仅转义大于/小于和小于斜杠,请尝试以下操作:
var sanitizer = const HtmlEscape(HtmlEscapeMode.ELEMENT);
请记住,Dart会在字符串进入HTML之前自动清理字符串.因此,您可能不需要手动转义HTML脚本.如果使用不安全的字符串调用element.setInnerHtml,它将被清理.
import 'dart:convert' show HtmlEscape; void main() { var unsafe = 'Hello <script>world</script>'; var sanitizer = const HtmlEscape(); print(sanitizer.convert(unsafe)); }
上面的应用程序打印:
Hello <script>world</script>
默认行为是转义撇号,大于/小于,小于引号和斜杠.
如果要控制转义的内容,可以使用HtmlEscapeMode创建新的HtmlEscape.
例如,要仅转义大于/小于和小于斜杠,请尝试以下操作:
var sanitizer = const HtmlEscape(HtmlEscapeMode.ELEMENT);
请记住,Dart会在字符串进入HTML之前自动清理字符串.因此,您可能不需要手动转义HTML脚本.如果使用不安全的字符串调用element.setInnerHtml,它将被清理.