URL 编码/解码
概述
以下是常见符号的 URL 编码表格,包括符号、URL编码和描述:
符号 | URL编码 | 描述 |
---|---|---|
空格 | %20 | 空格 |
" | %22 | 双引号 |
# | %23 | 井号 |
$ | %24 | 美元符号 |
% | %25 | 百分号 |
& | %26 | 和号 |
' | %27 | 单引号 |
( | %28 | 左圆括号 |
) | %29 | 右圆括号 |
* | %2A | 星号 |
+ | %2B | 加号 |
, | %2C | 逗号 |
/ | %2F | 斜杠 |
: | %3A | 冒号 |
; | %3B | 分号 |
< | %3C | 小于号 |
= | %3D | 等号 |
> | %3E | 大于号 |
? | %3F | 问号 |
@ | %40 | 亚瑟斯 |
[ | %5B | 左方括号 |
\ | %5C | 反斜杠 |
] | %5D | 右方括号 |
^ | %5E | 尖角号 |
_ | %5F | 下划线 |
` | %60 | 反引号 |
{ | %7B | 左花括号 |
| | %7C | 垂直线 |
} | %7D | 右花括号 |
~ | %7E | 波浪号 |
encodeURIComponent() 函数 与 encodeURI() 函数的区别
它们都是编码URL,唯一区别就是编码的字符范围,其中
encodeURI方法不会对下列字符编码 ASCII字母、数字、~!@#$&*()=:/,;?+'
encodeURIComponent方法不会对下列字符编码 ASCII字母、数字、~!*()'
也就是encodeURIComponent编码的范围更广,会将http://XXX中的//也编码,会导致URL不可用。(其实java中的URLEncoder.encode(str,char)也类似于这个方法,会导致URL不可用)