有些符號在URL中是不能直接傳遞的,如果要在URL中傳遞這些特殊符號,那么就要使用他們的編碼了。編碼的格式為:%加字符的ASCII碼,即一個百分號%,后面跟對應字符的ASCII(16進制)碼值。例如 空格的編碼值是"%20"。
如果不使用轉義字符,這些編碼就會當URL中定義的特殊字符處理。
下表中列出了一些URL特殊符號及編碼 十六進制值
1.+ URL 中+號表示空格 %2B
2.空格 URL中的空格可以用+號或者編碼 %20
3./ 分隔目錄和子目錄 %2F
4.? 分隔實際的 URL 和參數 %3F
5.% 指定特殊字符 %25
6.# 表示書簽 %23
7.& URL 中指定的參數間的分隔符 %26
8.= URL 中指定參數的值 %3D
可以采用JS的編碼方法:
1. escape - 采用ISO Latin字符集對指定的字符串進行編碼。不會被此方法編碼的字符: @ * / +
2. encodeURI - 把URI字符串采用UTF-8編碼格式轉化成escape格式的字符串不會被此方法編碼的字符:! @ # $& * ( ) = : / ; ? + '
3. encodeURIComponent - 把URI字符串采用UTF-8編碼格式轉化成escape格式的字符串。不會被此方法編碼的字符:! * ( ) '
文章來源:
http://czy4411741.blog.163.com/blog/static/34203127200991804738266/