之前遇到過一個下面這種形式的字符串,不知道具體是什么含義:
%E4%BD%A0%E5%A5%BD%EF%BC%8C%E4%B8%96%E7%95%8C
推斷這是URL編碼格式,試了一下轉碼,發現真的可以。
在線轉碼工具:http://tool.chinaz.com/tools/urlencode.aspx
接下來介紹一下什么是URL編碼
url編碼是一種瀏覽器用來打包表單輸入的格式。
瀏覽器從表單中獲取所有的name和其中的值 ,將它們以name/value參數編碼(移去那些不能傳送的字符,將數據排行等等)作為URL的一部分或者分離地發給服務器。
不管哪種情況,在服務器端的表單輸入格式樣子象這樣:
theName=Ichabod+Crane&gender=male&status=missing& ;headless=yes
URL編碼遵循下列規則:
每對name/value由&;符分開;
每對來自表單的name/value由=符分開。
如果用戶沒有輸入值給這個name,那么這個name還是出現,只是無值。
任何特殊的字符(就是那些不是簡單的七位ASCII,如漢字)將以百分符%用十六進制編碼,當然也包括象 =,&;,和 % 這些特殊的字符。
其實url編碼就是一個字符ascii碼的十六進制。不過稍微有些變動,需要在前面加上“%”。比如“\”,它的ascii碼是92,92的十六進制是5c,所以“\”的url編碼就是%5c