HTML encode คือกระบวนการแปลงอักขระที่มีความหมายพิเศษใน HTML (เช่น <, >, ", & เป็นต้น) ให้เป็น HTML Entity ที่สอดคล้องกัน วิธีนี้จะช่วยให้มั่นใจว่าอักขระเหล่านี้จะแสดงอย่างถูกต้องในหน้าเว็บ แทนที่จะถูกตีความว่าเป็นแท็กหรือแอตทริบิวต์ HTML ตัวอย่างเช่น:
< กลายเป็น <
> กลายเป็น >
& กลายเป็น &
การเข้ารหัส HTML มีความสำคัญเพื่อให้แน่ใจว่าข้อความที่มีอักขระพิเศษจะแสดงอย่างถูกต้องและปลอดภัยในเบราว์เซอร์
เพื่อป้องกัน HTML การโจมตีแบบฉีด เช่น Cross-Site Scripting (XSS) ซึ่งเนื้อหาที่ไม่น่าเชื่อถือสามารถทำลายโครงสร้างของเพจหรือสร้างสคริปต์ที่เป็นอันตรายได้
เพื่อให้แน่ใจว่า อักขระพิเศษ (เช่น <, >, &, " เป็นต้น) แสดงเป็นข้อความ และเบราว์เซอร์จะไม่ตีความว่าเป็น HTML หรือ JavaScript
เพื่อแสดงเนื้อหาที่สร้างโดยผู้ใช้ อย่างปลอดภัยในเว็บแอปพลิเคชันโดยไม่กระทบต่อความปลอดภัยหรือเค้าโครง
การเข้ารหัส HTML มักจะทำผ่านฟังก์ชันในตัวในภาษาการเขียนโปรแกรมมากมาย:
ใน JavaScript คุณสามารถใช้ไลบรารีเช่น DOMParser หรือสร้าง ฟังก์ชันการเข้ารหัสของคุณเอง
ใน Python ไลบรารีเช่น html มีฟังก์ชันเช่น html.escape()
เฟรมเวิร์กเว็บและภาษาฝั่งเซิร์ฟเวอร์จำนวนมากมีฟังก์ชันในตัวเพื่อเข้ารหัสเนื้อหาโดยอัตโนมัติ
กระบวนการนี้โดยทั่วไปเกี่ยวข้องกับการแทนที่อักขระพิเศษด้วยเอนทิตี HTML ที่สอดคล้องกัน
เมื่อแสดงอินพุตของผู้ใช้ (เช่น ข้อมูลแบบฟอร์ม ความคิดเห็น หรือข้อความ) บนเว็บเพจ เพื่อป้องกันไม่ให้ถูกตีความว่าเป็น HTML หรือ JavaScript
เมื่อฝังอักขระพิเศษ ใน HTML (เช่น เครื่องหมายคำพูดหรือวงเล็บเหลี่ยม) เพื่อให้แน่ใจว่าอักขระเหล่านี้แสดงอย่างถูกต้องและไม่ถูกปฏิบัติเป็น รหัส
เมื่อทำงานกับเนื้อหาไดนามิก ที่อาจมีอักขระพิเศษที่อาจทำลายการจัดรูปแบบ HTML หรือก่อให้เกิดความเสี่ยงต่อความปลอดภัย
เมื่อส่งผ่านข้อมูลผ่านหน้าเว็บ และเพื่อให้แน่ใจว่าเนื้อหาถูกแสดงผลอย่างปลอดภัยโดยไม่มีการรบกวนจากการตีความ HTML ของเบราว์เซอร์