การเข้ารหัส URL Hex (เรียกอีกอย่างว่า การเข้ารหัสเปอร์เซ็นต์) คือกระบวนการเข้ารหัสอักขระเป็น รูปแบบเลขฐานสิบหก โดยใช้เครื่องหมายเปอร์เซ็นต์ (%) ตามด้วยเลขฐานสิบหกสองตัว
การเข้ารหัสนี้มักใช้แทนอักขระใน URL ที่มีการสงวนไว้หรือไม่ปลอดภัยในรูปแบบดิบ เพื่อให้แน่ใจว่า URL จะถูกส่งอย่างถูกต้อง
ตัวอย่างเช่น ช่องว่าง ( ) จะถูกเข้ารหัสเป็น %20 และเครื่องหมายทับ (/) อาจถูกเข้ารหัสเป็น %2F
การส่งข้อมูลที่ปลอดภัย: อักขระบางตัวใน URL ถูกสงวนไว้หรือมีความหมายพิเศษ (เช่น &, ?, =, /, #) และการเข้ารหัสช่วยให้แน่ใจว่าอักขระเหล่านี้จะไม่รบกวนโครงสร้าง URL
ความสมบูรณ์ของข้อมูล: ป้องกันการทุจริตข้อมูลโดยการเข้ารหัสอักขระที่อาจถูกตีความไม่ถูกต้องโดยเว็บเซิร์ฟเวอร์หรือเบราว์เซอร์
มาตรฐานเว็บ: ช่วยให้แน่ใจว่าข้อมูลสามารถส่งผ่านคำขอ HTTP สตริงแบบสอบถาม หรือการส่งแบบฟอร์มได้อย่างปลอดภัย ซึ่งอักขระพิเศษอาจทำให้รูปแบบเสียหายได้
ระบุอักขระใน URL (เช่น ช่องว่าง เครื่องหมายวรรคตอน หรืออักขระที่ไม่ใช่ ASCII) ที่จำเป็นต้องเข้ารหัส
ใช้ฟังก์ชันหรือไลบรารีในตัวในภาษาการเขียนโปรแกรม (เช่น encodeURIComponent() หรือ encodeURI() ใน JavaScript, urllib.parse.quote() ใน Python)
กระบวนการเข้ารหัสจะแปลงอักขระเหล่านี้ให้เป็นเลขฐานสิบหก ตัวอย่างเช่น ช่องว่าง ( ) จะกลายเป็น %20 เครื่องหมายแอมเปอร์แซนด์ (&) จะกลายเป็น %26 และอื่นๆ
ถอดรหัสโดยใช้กระบวนการย้อนกลับ (decodeURIComponent() หรือ urllib.parse.unquote()) เมื่อดึงข้อมูลจาก URL
เมื่อส่งข้อมูลผ่าน URL ที่อักขระอาจขัดแย้งกับโครงสร้าง URL หรือโปรโตคอล (เช่น &, =, #)
เมื่อเข้ารหัสอินพุตของผู้ใช้ในการส่งแบบฟอร์ม สตริงแบบสอบถาม หรือ URL เพื่อให้แน่ใจว่าจะไม่ทำลายรูปแบบคำขอ
เมื่อต้องจัดการกับอักขระที่ไม่ใช่ ASCII หรือสัญลักษณ์พิเศษที่อาจเข้ากันไม่ได้กับ URL
เมื่อฝังข้อมูลใน URL (เช่น พารามิเตอร์การค้นหา) หรือเมื่อสร้างลิงก์เพื่อป้องกันปัญหาเกี่ยวกับช่องว่างหรืออักขระสงวน