NodeValidatorBuilder

帮助构建标准节点验证策略的类。

默认情况下,它将不接受任何内容,但可以使用 'allow*' 函数来扩展允许的元素或属性类型。

所有允许函数都是累加的 - 如果元素被任何特定规则接受,则将接受元素。

重要的是要记住,净化不仅仅是旨在防止跨站脚本攻击,还旨在防止信息以意外方式显示。例如,显示基本格式化文本的某物可能不期望出现 <video> 标签。在这种情况下,一个只包含 allowTextElements 的空 NodeValidatorBuilder 可能是合适的。

实现类型

构造函数

NodeValidatorBuilder()
NodeValidatorBuilder.common()
创建一个新的 NodeValidatorBuilder,它接受常见构造。

属性

hashCode int
此对象的哈希码。
无设置器继承
runtimeType Type
对象运行时类型的表示。
无设置器继承

方法

add(NodeValidator validator) → void
向当前验证器列表中添加一个额外的验证器。
allowCustomElement(String tagName, {UriPolicy? uriPolicy, Iterable<String>? attributes, Iterable<String>? uriAttributes}) → void
允许具有指定标签名和指定属性的定制元素。
allowElement(String tagName, {UriPolicy? uriPolicy, Iterable<String>? attributes, Iterable<String>? uriAttributes}) → void
allowHtml5({UriPolicy? uriPolicy}) → void
允许常见的安全HTML5元素和属性。
allowImages([UriPolicy? uriPolicy]) → void
允许图像元素。
allowInlineStyles({String? tagName}) → void
允许元素上的内联样式。
allowNavigation([UriPolicy? uriPolicy]) → void
允许导航元素 - 表单和锚标签,以及常见属性。
allowsAttribute(Element element, String attributeName, String value) bool
如果属性被允许,则返回true。
override
allowsElement(Element element) bool
如果tagName是接受类型,则返回true。
override
allowSvg() → void
允许SVG元素和属性,但排除已知的坏元素。
allowTagExtension(String tagName, String baseName, {UriPolicy? uriPolicy, Iterable<String>? attributes, Iterable<String>? uriAttributes}) → void
允许具有指定类型名称和指定属性的定制标签扩展。
allowTemplating() → void
允许模板元素(例如
allowTextElements() → void
允许基本文本元素。
noSuchMethod(Invocation invocation) → dynamic
当访问不存在的方法或属性时被调用。
继承
toString() String
该对象的字符串表示形式。
继承

运算符

operator ==(Object other) bool
相等运算符。
继承