URL Encode

posted on 22 Aug 2004 23:10 by ipats

เพื่อนๆ คนเคยลองสังเกตุดูนะครับ
ว่า url ของเว็บเพจที่เราเข้าเนี่ย
บางหน้าจะมีประมาณว่า %2E%2F
อยู่ใน url พวกนั้นด้วย

แน่นอนครับว่ามันมีความหมายพิเศษ
(ไม่งั้นก็คงไม่เอามาบ่นหรอก)
ไอ้พวกเนี่ยครับ เค้าเรียกว่า url encode
แล้วมันมีประโยชน์อย่างไรล่ะ เอิ้กๆๆๆ

เอาที่เห็นได้ชัดเลยนะครับ
เวลาที่ส่งข้อมูลที่เรียกว่า query string
(query string หมายถึง ข้อความที่อยู่หลังเครื่องหมาย ? ใน url
เช่น http://www.exteen.com/blog.asp?ipats
ถือว่า ipats คือ query string ครับ)

จะเห็นว่า ถ้าหากเราต้องการส่งข้อความที่มีพวกเครื่องหมาย / . ช่องว่าง หรือ :
เช่น "คนไหนสวย/หล่อ ยกมือขึ้น"
มันก็น่าจะส่งไปแบบนี้ http://www.abc.com/page.asp?คนไหนสวย/หล่อ ยกมือขึ้น
แต่มันกลับมีปัญหาอ่ะซิครับ
เพราะว่า server จะตีความว่า / เป็นเครื่องหมายแบ่ง directory ไป
วิธีแก้ทำอย่างไร.. ก็หาอะไรมาแทน / ซะ
แล้วถ้ามีอะไรซักอย่างมาแทน / แล้วเวลาจะใส่ตัวนั้นล่ะ จะทำอย่างไร
ก็เป็นปัญหาอีก...

เค้าก็เลยกำหนดให้ว่า ตัวอักษรพิสดารเหล่านี้เวลาแทนใน query string
ให้ใช้ % นำหน้าเลขฐาน 16 จำนวน 2 ตัวที่มีค่าเป็นอักษรตัวนั้นครับ
เช่น / มีค่าเป็น 2F ก็จะถูกแทนด้วย %2F เวลาจะใช้ % ก็ใส่ %25
อะไรประมาณนี้นะครับ... ตัวอื่นๆที่เป็นได้บ่อยก็มี
. => %2E
/ => %2F
: => %3A
= => %3D
% = %25
(ช่องว่าง) => %20
? => %3F
& => %26
ส่วนพวกภาษาไทยก็ถูก encode ได้ด้วย
เช่นคำว่า ต่าย จะกลายเป็น %B5%E8%D2%C2

แล้วเอามาพูดทำไมเนี่ย... เอิ้กๆๆ
รู้ไว้มันก็มีประโยชน์ครับ
เอาไว้ช่วยให้เราอ่านอะไรๆ ที่ซ่อนอยู่ได้ดีขึ้น

เช่น

playnew.asp?info=http%3A%2F%2Fwww%2Emzaa%2Ecom%2Fmusic%2Fmp3s%2F03%2E%2520 Thai%2520%2D%2520%E0%BE%C5%A7%E4%B7%C2%2FIn%2520Year %25202004%2F01%2520%2D%2520F%2520%2D%2520Hyper %2520%AA%D8%B4%2520%E3%CA%E8%C3%E9%D2%C2%BB%E9
%D2%C2%CA%D5%2FHyper %2520%2D%252001%2520%E3%CA%E8%C3%E9%D2%C2%BB%E9
%D2%C2%CA%D5%2Ered&internal=1

จะเห็นว่าตรง info คล้ายๆ จะเป็น url
ก็ลอง decode ดูแล้วกันนะครับ
ว่ามันจะออกมาเป้นอะไร อิอิ

... พอดีก่า (ไร้สาระเยอะเกิน)
เขียนบ้าไรก็ไม่รู้ เหอๆๆ

ปิดท้ายด้วย
%E3%A4%C3%CD%E8%D2%B9%B5%C3%A7%B9%D5%E9%CD%CD%A1%A2 %CD%E3%CB%E9%C3%C7%C2%E6%E6%E6%E6

Comment



smilebig smileopen-mounthed smileconfused smilesad smileangry smiletonguequestionembarrassedsurprised smilewinkdouble winkcry

อ๋อ มันเป็นอย่างนี้นี่เอง

(แต่ก็ยังงงอยู่ดี)

แล้วทำไม
http://www.exteen.com/blog.asp?ipats
ต้องมี blog.asp? ด้วยอ่ะ

#1 By A N E W on 2004-08-22 23:44

blog.asp คือชื่อไฟล์ครับ เป็นไฟล์ที่จัดการแสดงบลอคของสมาชิก

แต่ก็ยังสามารถเข้าบลอคได้ทาง
www.exteen.com/username ด้วยนะครับ
(เพียงแต่จะ redirect ไปเท่านั้นเอง)
http://www.albionresearch.com/misc/urlencode.php

URL ENCODE-DECODE PAGE
รับทราบจ้า

#4 By A N E W on 2004-08-24 16:12

คือผมอัดเพลงแล้ว จะเอาไปเปิดใน Winamp อะครับ แต่เปิดไม่ได้มันไม่เล่นให้อะครับ ข้างหลังก็ไม่มีเวลา เขียนไว้ด้วย ช่วยทีครับ

#5 By ตอบทีฮะ (203.188.37.64) on 2007-01-21 14:17