JustUtils
Private by designInstant results

URL Encoder & Decoder

Make text safe for a URL—or turn percent codes back into readable text. Your result updates as you type.

What do you want to do?

What are you working with?

Paste only the value you want to transform.

0 chars
0 UTF-8 bytes

URL-safe result

Updates instantly—no submit button needed.

0 chars
Your result will appear here
Try an example:
Processed only in this browser

คู่มือ URL ENCODING

เข้ารหัสเฉพาะส่วนของ URL ที่เป็นข้อมูล ไม่ใช่ทั้งโครงสร้างโดยไม่จำเป็น

Percent-encoding แทนอักขระด้วย byte UTF-8 ในรูป %HH เพื่อให้ส่งผ่าน URL ได้อย่างปลอดภัย ควรแยก path, query key และ query value ก่อนเลือกสิ่งที่จะ encode

วิธีใช้งานทีละขั้นตอน

  1. 01

    เลือกข้อความ

    คัดลอกเฉพาะค่าที่ต้องอยู่ใน path หรือ query parameter

  2. 02

    เข้ารหัสหนึ่งครั้ง

    หลีกเลี่ยงการ encode ค่าเดิมซ้ำ เพราะเครื่องหมาย % จะกลายเป็น %25

  3. 03

    ตรวจผลถอดรหัส

    Decode แล้วเปรียบเทียบกับต้นฉบับ โดยเฉพาะช่องว่าง เครื่องหมาย + และอักขระภาษาไทย

รายละเอียดที่ควรตรวจสอบก่อนนำผลลัพธ์ไปใช้

  • encodeURIComponent เหมาะกับค่าหนึ่งส่วน ส่วน URL ทั้งเส้นควรจัดการโครงสร้างแยกต่างหาก
  • เครื่องหมาย + อาจหมายถึงช่องว่างใน form encoding แต่ไม่ใช่ทุกบริบท
  • ตรวจการ encode ซ้ำเมื่อพบ %25 ตามด้วยเลขฐานสิบหก

แนวคิดและข้อจำกัดที่สำคัญ

Percent sequence แทน byte

%E0%B8... คือ byte UTF-8 ของอักขระ ไม่ได้แทนตัวอักษรทีละหนึ่งเสมอ โดยเฉพาะภาษาไทยและ emoji

ค่า URL กับ URL ทั้งเส้น

ควร encode query value หรือ path segment แยกกัน การ encode URL ทั้งเส้นอาจทำลาย : / ? & และ = ที่เป็นโครงสร้าง

คำถามที่พบบ่อย

ทำไมช่องว่างเป็น %20?

เพราะ byte ของช่องว่างคือ 0x20 ส่วนเครื่องหมาย + หมายถึงช่องว่างเฉพาะบางรูปแบบของ form encoding

ควร encode URL ทั้งเส้นไหม?

โดยทั่วไปไม่ ควร encode เฉพาะค่าหรือ segment แล้วประกอบกับโครงสร้าง URL

ทำไม decode แล้วผิดพลาดเมื่อมี %?

เครื่องหมาย % ต้องตามด้วยเลขฐานสิบหกสองหลัก ค่า % ที่หลงมาหรือ sequence ไม่ครบจึงถอดรหัสไม่ได้

JustUtils บันทึก URL หรือข้อความไหม?

ไม่ การ encode และ decode ทำในเบราว์เซอร์และไม่มีประวัติบนเซิร์ฟเวอร์