插件概览
sanitize_html 包是一个 Dart 工具,旨在通过过滤掉潜在危险的元素和属性来安全地清理 HTML 内容,防止 XSS 攻击。它允许开发者定义一个安全的 HTML 标签和属性子集,确保仅渲染受信任的内容。适用于处理用户生成内容的应用程序,支持所有主要平台,包括 Web、移动和桌面。该包由 Google 维护,并可与 Flutter 项目无缝集成。
适合场景
- 处理用户生成的内容
- 安全地渲染富文本
- 防止 Web 视图中的 XSS
- 保护表单输入
- 显示来自不受信任源的markdown或HTML
主要特点
- Safe HTML filtering
- Customizable allowed tags and attributes
- Cross-platform support
- Lightweight and efficient
- Maintained by Google
适合对象
- Web and mobile apps with user input
- Content management systems
- Chat or comment sections
- Educational platforms
- Secure document rendering
使用建议
- 需要显式定义安全规则
- 如果过于严格,可能会删除所需的格式
- 不适用于完整的HTML转换
- 大型 HTML 字符串的性能影响
- 仅限清理,不包括解析或渲染