NodeValidatorBuilder 类
帮助构建标准节点验证策略的类。
默认情况下,它不接受任何内容,但可以使用 'allow*' 函数来扩展允许的元素或属性类型。
所有允许函数都是累加的 - 如果元素被任何特定规则接受,则将接受元素。
记住,清洗不是仅仅用预防跨站点脚本攻击,而是防止信息以意外的方式显示。例如,显示基本格式化文本的某物可能不希望看到 <video>
标签出现。在这种情况下,一个空的 NodeValidatorBuilder,只带有 allowTextElements 可能是合适的。
- 实现类型
构造函数
- 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 - 允许元素的内联样式。
- 允许导航元素 - 表单和锚标签,以及常用属性。
-
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 - 该对象的字符串表示形式。继承