Sanitizer: get() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

Sanitizer 接口的 get() 方法会返回一个 SanitizerConfig 字典实例,该实例代表当前的 Sanitizer 配置。

这可以用于创建一个与默认配置略有不同的 sanitizer;首先获取并修改默认 sanitizer 配置,然后用它来构造一个新的 sanitizer。

返回的配置也可以用来检查配置,并且可以直接传递给 HTML 解析函数。但请注意,传递 Sanitizer 对象会比传递配置字典更有效率,尤其是在 Sanitizer 需要多次使用时。

语法

js
get()

参数

None

返回值

一个 SanitizerConfig

示例

获取配置

此示例展示了如何创建一个新的 sanitizer 并获取其配置。

JavaScript

下面的代码测试了 Sanitizer 接口是否受支持,如果支持,则使用一个简单的 SanitizerConfig 创建一个新的 Sanitizer 对象,该配置允许使用 HTML 元素:<div><p><span><script>。然后,它会获取并记录配置。

js
// Create sanitizer using SanitizerConfig
const sanitizer = new Sanitizer({ elements: ["div", "p", "span", "script"] });

// Get current configuration
const sanitizerConfig = sanitizer.get();

log(JSON.stringify(sanitizerConfig, null, 2));

结果

输出将在下方日志中显示。请注意,在构造 sanitizer 时设置的元素会返回,但新元素也有命名空间。另外请注意,此处允许注释和数据属性。

获取默认 sanitizer

此示例展示了如何获取默认 Sanitizer 的配置。然后可以修改此配置,并用于创建满足您特定需求的新的 Sanitizer

JavaScript

下面的代码测试了 Sanitizer 接口是否受支持。然后,它创建默认的 Sanitizer,不传递任何选项,然后获取并记录配置。

js
// Create default sanitizer
const sanitizer = new Sanitizer();

// Get default configuration
const defaultConfig = sanitizer.get();

log(JSON.stringify(defaultConfig, null, 2));

结果

默认 sanitizer 配置将在下方日志中显示。请注意,默认配置相当庞大,允许许多元素和属性。

规范

规范
HTML Sanitizer API
# dom-sanitizer-get

浏览器兼容性