乐趣区

关于前端:DOMPurify-使用方法如何安全地操作DOM-sanitizeinnerHTMLTypeScript-TS

DOMPurify 是一个仅限 DOM 的,超疾速的,超级宽容的 XSS 清理器,用于 HTML,MathML 和 SVG。

它也非常简单易用和入门。DOMPurify 于 2014 年 2 月启动,同时已达到 v3.0.5 版本。

DOMPurify 是用 JavaScript 编写的,实用于所有古代浏览器(Safari(10+),Opera(15+),Edge,Firefox 和 Chrome – 以及简直所有应用 Blink,Gecko 或 WebKit 的其余浏览器)。它不会在 MSIE 或其余旧版浏览器上中断。它什么都不做。

它有什么作用?

DOMPurify 清理 HTML 并避免 XSS 攻打。你能够用充斥脏 HTML 的字符串来输出 DOMPurify,它将返回一个带有洁净 HTML 的字符串(除非另有配置)。DOMPurify 将删除所有蕴含危险 HTML 的内容,从而避免 XSS 攻打和其余恶浊的内容。它也该死的血腥快。咱们应用浏览器提供的技术,并将它们转换为 XSS 过滤器。您的浏览器越快,DOMPurify 的速度就越快。

如何应用它?

这很容易。只需在您的网站上蕴含 DOMPurify。

@types/dompurify

<script type="text/javascript" src="src/purify.js"></script>

生成的 HTML 能够应用 DOM 元素 innerHTML 写入 DOM 元素,也能够应用 document.write() . 这齐全取决于你。请留神,默认状况下,咱们容许 HTML、SVG 和 MathML。如果你只须要 HTML,这可能是一个十分常见的用例,你也能够轻松设置它:

const clean = DOMPurify.sanitize(dirty, { USE_PROFILES: { html: true} });

TypeScript 类型定义在哪里?

只有用这个就行 @types/dompurify


更多技术小窍门:开发者技术前沿

退出移动版