DEV

URL Encoding — เข้ารหัสและถอดรหัส URL ออนไลน์

URL สามารถมีได้แค่ตัวอักษร ASCII บางตัว ช่องว่าง ตัวอักษรพิเศษ และ non-ASCII ต้องเข้ารหัสเป็นลำดับ percent (%xx)

Percent Encoding

แต่ละไบต์แสดงด้วย % และตัวเลขฐานสิบหกสองหลัก ช่องว่าง = %20 เบราว์เซอร์สมัยใหม่แสดง URL ที่ถอดรหัสแล้ว แต่เซิร์ฟเวอร์ต้องการที่เข้ารหัส

encodeURI vs encodeURIComponent

  • encodeURI() — เข้ารหัส URL ทั้งหมด รักษา /, :, @, #
  • encodeURIComponent() — เข้ารหัส parameters แทน /, ?, & ด้วย