Lọc HTML an toàn API

Loại bỏ script, iframe, form, event handler, style inline và link javascript: khỏi HTML không tin cậy trước khi hiển thị.

POSThttps://apibox.io.vn/v1/html-sanitize
Nội dung & HTML▶ Dùng thử online

Gửi HTML không tin cậy qua trường html (JSON hoặc form) hoặc dưới dạng body thô text/html, API trả về bản đã làm sạch trong trường html. Bộ lọc phân tích cú pháp HTML và xoá hẳn các thẻ nguy hiểm: script, style, iframe, object, embed, form, input, button, link, meta, base, frame và frameset.

Với các thẻ còn lại, API xoá mọi thuộc tính on* (onclick, onerror...), mọi thuộc tính style, và các giá trị href, src, xlink:href, action bắt đầu bằng javascript:, vbscript: hoặc data:text. Định dạng thông thường, link, ảnh và bảng được giữ nguyên. Đây cũng là bộ lọc mà API Markdown sang HTML sử dụng.

Body request tối đa 1 MB, trường html tối đa 2.000.000 ký tự. Bộ lọc hoạt động theo danh sách chặn, nên với nội dung đặc biệt nhạy cảm hãy kết hợp thêm Content Security Policy.

Tham số

TênVị tríKiểuBắt buộcMặc định
htmlbodystringcóHTML cần làm sạch (tối đa 2.000.000 ký tự). Có thể gửi dưới dạng body thô text/html.

Ví dụ

curl -X POST "https://apibox.io.vn/v1/html-sanitize" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"html":"<p onclick=\"alert(1)\" style=\"color:red\">Hi <a href=\"javascript:alert(1)\">click</a></p><script>alert(2)</script><img src=\"x\" onerror=\"alert(3)\">"}'

Kết quả trả về

{
  "html": "<p>Hi <a>click</a></p><img src=\"x\">"
}

Ứng dụng

  • Làm sạch HTML do người dùng nhập từ bình luận, diễn đàn, trình soạn thảo
  • Gỡ script theo dõi và style inline khỏi nội dung nhập từ nguồn khác
  • Lọc email HTML trước khi hiển thị trong ứng dụng web
  • Chuẩn bị HTML thu thập từ web để lưu trữ và hiển thị an toàn

Hỏi đáp

Những thẻ và thuộc tính nào bị loại bỏ?

Các thẻ script, style, iframe, object, embed, form, input, button, link, meta, base, frame, frameset; mọi event handler on*; mọi thuộc tính style; và URL javascript:, vbscript:, data:text trong href, src, xlink:href, action.

Link và ảnh có được giữ lại không?

Có. Thẻ <a href> và <img src> bình thường được giữ nguyên; chỉ các URL nguy hiểm và event handler như onerror bị xoá.

Có gửi HTML thô mà không cần JSON được không?

Được. Gửi HTML làm body của request POST với Content-Type: text/html.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →