说明
URL 只支持 ASCII 码传输;
URL encoding 编码字符到能传输的格式;
URL encoding 使用 % 加上两个十六进制数编码不支持的字符;
URL 不能含有空格,URL encoding 替换空格成 %20;
保留字符
保留字符意味着这些字符在某些情况下有特殊的用途,比如反斜杠 / ,可以分割目录。
保留字符
percent-encoding
newline
%0A or %0D or %0D%0A
space
%20
!
%21
#
%23
$
%24
%
%25
&
%26
'
%27
(
%28
)
%29
*
%2A
+
%2B
,
%2C
/
%2F
:
%3A
;
%3B
=
%3D
?
%3F
@
%40
[
%5B
]
%5D
非保留字符
非保留字符意味着这些字符可以直接传输,非保留字符外的字符,如果要传输,就要进行百分号编码。
RFC 3986 section 2.3 Unreserved Characters (January 2005)
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
0
1
2
3
4
5
6
7
8
9
-
_
.
~