套件概覽
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 字符串的性能影響
- 僅限清理,不包含解析或呈現