HTTP URL只能使用ASCII字符集(通常包含ASCII集合外的字符)通过Internet发送。所以这些不安全的字符必须被替换为%, 后跟两个十六进制数字。
下表显示了在将URL传递到服务器之前可以在URL中使用的字符及其替换的ASCII符号:
ASCII | 符号 | 替代 |
---|---|---|
<32 | 用%xx编码,其中xx是字符的十六进制表示形式。 | |
32 | 空间 | +或%20 |
33 | ! | %21 |
34 | “ | %22 |
35 | # | %23 |
36 | $ | %24 |
37 | % | %25 |
38 | & | %26 |
39 | “ | %27 |
40 | ( | %28 |
41 | ) | %29 |
42 | * | * |
43 | + | %2B |
44 | , | %2C |
45 | - | - |
46 | 。 | 。 |
47 | / | %2F |
48 | 0 | 0 |
49 | 1 | 1 |
50 | 2 | 2 |
51 | 3 | 3 |
52 | 4 | 4 |
53 | 5 | 5 |
54 | 6 | 6 |
55 | 7 | 7 |
56 | 8 | 8 |
57 | 9 | 9 |
58 | : | %3A |
59 | ; | %3B |
60 | < | %3C |
61 | = | %3D |
62 | > | %3E |
63 | ? | %3F |
64 | @ | %40 |
65 | 一个 | 一个 |
66 | B | B |
67 | C | C |
68 | D | D |
69 | E | E |
70 | F | F |
71 | G | G |
72 | H | H |
73 | 一世 | 一世 |
74 | J | J |
75 | K | K |
76 | L | L |
77 | M | M |
78 | N | N |
79 | O | O |
80 | P | P |
81 | 问 | 问 |
82 | R | R |
83 | S | S |
84 | T | T |
85 | uint16 | uint16 |
86 | V | V |
87 | W | W |
88 | X | X |
89 | Y | Y |
90 | Z | Z |
91 | [ | %5B |
92 | %5C | |
93 | ] | %5D |
94 | ^ | %5E |
95 | _ | _ |
96 | ` | %60 |
97 | 一个 | 一个 |
98 | b | b |
99 | C | C |
100 | d | d |
101 | e | e |
102 | F | F |
103 | G | G |
104 | H | H |
105 | 一世 | 一世 |
106 | j | j |
107 | k | k |
108 | l | l |
109 | m | m |
110 | n | n |
111 | o | o |
112 | p | p |
113 | q | q |
114 | r | r |
115 | s | s |
116 | t | t |
117 | 你 | 你 |
118 | v | v |
119 | w | w |
120 | X | X |
121 | y | y |
122 | z | z |
123 | { | %7B |
124 | | | %7C |
125 | } | %7D |
126 | 〜 | %7E |
127 | %7F | |
> 127 | 用%xx编码,其中xx是字符的十六进制表示形式。 |