URL Encode/Decode (แปลง URL ภาษาไทย และ Query)
เข้ารหัสและถอดรหัส URL (percent-encoding) ทันทีในบราวเซอร์ของคุณ สลับระหว่าง encodeURIComponent / encodeURI และตรวจจับการเข้ารหัสซ้ำซ้อนที่อาจเกิดขึ้น
ตัวเลือก
ขั้นสูง
ควรใช้แบบไหนดี?
ค่าพารามิเตอร์ → encodeURIComponent
เหมาะสำหรับค่า Query, ส่วนของเส้นทาง และชื่อไฟล์ (การแปลง encodeURIComponent ที่ปลอดภัย)
URL ตัวเต็ม → encodeURI
คงตัวแบ่งเช่น ? & = / เพื่อให้ URL ยังคงอ่านออก
+ vs %20
“%20” เป็นมาตรฐาน “+” เป็นข้อตกลงของฟอร์ม/Query สลับใช้ตามความจำเป็น
ตัวอย่างอินพุต
- https://example.com/search?q=กรุงเทพ อาหารกลางวัน&ref=email#section
- utm_source=email&utm_campaign=ลดราคาฤดูใบไม้ผลิ 2026
- สวัสดี/Hello?name=มานะ¬e=ลด10%
คีย์ลัด
URL Encode/Decode (percent-encoding)
Percent-encoding คืออะไร?
การเข้ารหัส/ถอดรหัส URL จะแปลงตัวอักษรที่ไม่ใช่ ASCII และตัวอักษรสงวนให้เป็นลำดับ %xx เพื่อให้สามารถส่งผ่าน URL ได้อย่างปลอดภัย
encodeURI vs encodeURIComponent
ใช้ encodeURIComponent สำหรับแต่ละค่า แยกต่างหาก; ใช้ encodeURI สำหรับ URL ตัวเต็มที่ต้องการคงตัวแบ่งไว้
เคล็ดลับ
หาก %25 ปรากฏขึ้นเรื่อยๆ ข้อความอาจถูกเข้ารหัสซ้ำซ้อน ใช้แถบแจ้งเตือนเพื่อลองถอดรหัสอีกครั้งอย่างปลอดภัย
คำถามที่พบบ่อย
+ และ %20 ต่างกันอย่างไร?
“%20” คือการเข้ารหัสเปอร์เซ็นต์สำหรับช่องว่างตามมาตรฐาน RFC ส่วน “+” มักใช้ในฟอร์ม HTML (application/x-www-form-urlencoded) และมักถูกตีความเป็นช่องว่างใน Query String
ควรใช้ฟังก์ชันไหน?
สำหรับค่าต่างๆ เท่านั้น (ค่า Query, ส่วนของเส้นทาง, ชื่อไฟล์) ให้เลือก encodeURIComponent ส่วน URL ทั้งหมดที่ต้องคง ? & = / ไว้ ให้เลือก encodeURI
การเข้ารหัสซ้ำซ้อน (Double Encoding) คืออะไร?
หากพบ %25 (เครื่องหมาย “%” ที่ถูกเข้ารหัส) บ่อยครั้ง ค่าอาจถูกเข้ารหัสสองครั้ง ลองใช้ “ถอดรหัสอีกครั้ง” เพื่อกู้คืนค่าเดิม