Mã hóa/Giải mã HTML
Escape ký tự đặc biệt HTML thành thực thể, hoặc unescape tham chiếu ký tự dạng tên, thập phân và hex ngay trong trình duyệt để hiển thị thẻ và ví dụ mã.
Văn bản đầu vào
Ký tự
0 / 50,000
Bắt đầu nhanh
Tình huống sử dụng phổ biến
Nhận xét của người dùng
thoát văn bản khi bạn cần nhận xét hiển thị dưới dạng văn bản thuần túy bên trong ngữ cảnh nội dung HTML
Bài viết blog
hiển thị ví dụ mã HTML trong bài viết.
Bài đăng trên diễn đàn
hiển thị văn bản do người dùng tạo mà không để thẻ hiển thị dưới dạng đánh dấu
Tin nhắn trò chuyện
hiển thị đánh dấu đã dán dưới dạng văn bản trước khi nó đến khu vực nội dung HTML
Dữ liệu biểu mẫu
kiểm tra và sao chép các giá trị thoát trước khi hiển thị văn bản đã gửi
Hiển thị mã
trình bày đoạn mã HTML/JavaScript trên trang web.
Quy tắc escape & entity
Ranh giới trốn thoát và vệ sinh
Gợi ý sử dụng
Giới hạn & khả năng tương thích
Quyền riêng tư & bảo mật
Câu hỏi thường gặp
XSS (Tập lệnh chéo trang) xảy ra khi nội dung không đáng tin cậy được hiểu là tập lệnh hoặc đánh dấu trong một trang. Tính năng thoát HTML giúp ích trong ngữ cảnh nội dung HTML, nhưng nó chỉ là một phần của việc ngăn chặn XSS.
Sử dụng tính năng thoát HTML khi văn bản không đáng tin cậy được chèn vào ngữ cảnh thuộc tính hoặc nội dung HTML. Ưu tiên textContent hoặc lối thoát mặc định của khung cho văn bản thuần túy và sử dụng các lối thoát khác nhau cho ngữ cảnh JavaScript, CSS, URL hoặc JSON.
Cả hai đều biểu diễn ký tự < (less‑than). &lt; là entity tên (lt = less‑than); </< là entity dạng số/hex. Trong HTML hiện đại, chúng hoạt động tương đương: dùng &lt; để dễ đọc; dùng </< khi không hỗ trợ entity tên hoặc cần biểu diễn ký tự bất kỳ/đa ngôn ngữ. Luôn giữ dấu chấm phẩy (ví dụ &lt;); nếu bỏ, parser có thể dính với chữ sau, như “&notin” được đọc thành “&not;”+“in” → “¬in”.
Không. Tính năng thoát HTML chỉ hoạt động đối với ngữ cảnh thực thể HTML. Các chuỗi JavaScript, CSS, URL, JSON và HTML phong phú đều yêu cầu cách xử lý khác nhau.
Do nội dung bị escape hai lần: lần đầu < → &lt;, lần sau & → &amp;, dẫn đến &amp;lt;. Hãy tránh escape lặp lại.
Hãy sử dụng phương pháp khử trùng, không phải công cụ thoát hiểm này. Trình khử trùng có thể cho phép liệt kê các thẻ và thuộc tính an toàn, giao thức lọc và xóa các sự kiện hoặc kiểu. Sử dụng các thư viện như DOM Purify hoặc clean-html, vệ sinh trên máy chủ khi có thể và sử dụng textContent cho văn bản thuần túy.