URL编码(URL Encoding)
URL编码是将URL中具有特殊含义的不可打印字符或字符转换为明确且由Web浏览器和服务器普遍接受的表示的实践。 这些字符包括 -
ASCII control characters - 通常用于输出控制的不可打印字符。 字符范围为00-1F十六进制(十进制0-31)和7F(十进制127)。 下面给出了完整的编码表。
Non-ASCII control characters - 这些是超过128个字符的ASCII字符集的字符。 此范围是ISO-Latin字符集的一部分,包括ISO-Latin集合80-FF hex(十进制128-255)的整个“上半部分”。 下面给出了完整的编码表。
Reserved characters - 这些是特殊字符,例如美元符号,&符号,加号,常用,正斜杠,冒号,分号,等号,问号和“at”符号。 所有这些都可以在URL中具有不同的含义,因此需要进行编码。 下面给出了完整的编码表。
Unsafe characters - 这些是空格,引号,小于符号,大于符号,磅字符,百分比字符,左卷曲支撑,右卷曲支撑,管道,反斜杠,插入符号,Tilde,左方括号,右方括号,严重重音。 由于各种原因,这些字符可能会在URL中被误解。 这些字符也应始终编码。 下面给出了完整的编码表。
编码表示法用三个字符替换所需的字符:百分号和两个十六进制数字,对应于ASCII字符集中字符的位置。
例子 (Example)
最常见的特殊字符之一是白色空间。 您无法直接在URL中键入空格。 字符集中的空格位置是20个十六进制数。 因此,在将请求传递给服务器时,可以使用%20代替空格。
http://www.example.com/new%20pricing.htm
此URL实际上从www.example.com检索名为"new pricing.htm"的文档
ASCII控制字符编码
这包括字符范围00-1F十六进制(0-31十进制)和7F(十进制127)的编码
十进制 | 十六进制值 | 字符 | 网址编码 |
---|---|---|---|
0 | 00 | %00 | |
1 | 01 | %01 | |
2 | 02 | %02 | |
3 | 03 | %03 | |
4 | 04 | %04 | |
5 | 05 | %05 | |
6 | 06 | %06 | |
7 | 07 | %07 | |
8 | 08 | backspace | %08 |
9 | 09 | tab | %09 |
10 | 0a | linefeed | %0a |
11 | 0b | %0b | |
12 | 0c | %0c | |
13 | 0d | carriage return | %0d |
14 | 0e | %0e | |
15 | 0f | %0f | |
16 | 10 | %10 | |
17 | 11 | %11 | |
18 | 12 | %12 | |
19 | 13 | %13 | |
20 | 14 | %14 | |
21 | 15 | %15 | |
22 | 16 | %16 | |
23 | 17 | %17 | |
24 | 18 | %18 | |
25 | 19 | %19 | |
26 | 1a | %1a | |
27 | 1b | %1b | |
28 | 1c | %1c | |
29 | 1d | %1d | |
30 | 1e | %1e | |
31 | 1f | %1f | |
127 | 7f | %7f |
非ASCII控制字符编码
这包括ISO-Latin集合80-FF hex(128255十进制)的整个“上半部分”的编码。
十进制 | 十六进制值 | 字符 | 网址编码 |
---|---|---|---|
128 | 80 | € | %80 |
129 | 81 | %81 | |
130 | 82 | ‚ | %82 |
131 | 83 | ƒ | %83 |
132 | 84 | „ | %84 |
133 | 85 | … | %85 |
134 | 86 | † | %86 |
135 | 87 | ‡ | %87 |
136 | 88 | ˆ | %88 |
137 | 89 | ‰ | %89 |
138 | 8a | Š | %8a |
139 | 8b | ‹ | %8b |
140 | 8c | Œ | %8c |
141 | 8d | %8d | |
142 | 8e | Ž | %8e |
143 | 8f | %8f | |
144 | 90 | %90 | |
145 | 91 | ‘ | %91 |
146 | 92 | ’ | %92 |
147 | 93 | “ | %93 |
148 | 94 | ” | %94 |
149 | 95 | • | %95 |
150 | 96 | – | %96 |
151 | 97 | — | %97 |
152 | 98 | ˜ | %98 |
153 | 99 | ™ | %99 |
154 | 9a | š | %9a |
155 | 9b | › | %9b |
156 | 9c | œ | %9c |
157 | 9d | %9d | |
158 | 9e | ž | %9e |
159 | 9f | Ÿ | %9f |
160 | a0 | %a0 | |
161 | a1 | ¡ | %a1 |
162 | a2 | ¢ | %a2 |
163 | a3 | £ | %a3 |
164 | a4 | ¤ | %a4 |
165 | a5 | ¥ | %a5 |
166 | a6 | ¦ | %a6 |
167 | a7 | § | %a7 |
168 | a8 | ¨ | %a8 |
169 | a9 | © | %a9 |
170 | aa | ª | %aa |
171 | ab | « | %ab |
172 | ac | ¬ | %ac |
173 | ad | | %ad |
174 | ae | ® | %ae |
175 | af | ¯ | %af |
176 | b0 | ° | %b0 |
177 | b1 | ± | %b1 |
178 | b2 | ² | %b2 |
179 | b3 | ³ | %b3 |
180 | b4 | ´ | %b4 |
181 | b5 | µ | %b5 |
182 | b6 | ¶ | %b6 |
183 | b7 | · | %b7 |
184 | b8 | ¸ | %b8 |
185 | b9 | ¹ | %b9 |
186 | ba | º | %ba |
187 | bb | » | %bb |
188 | bc | ¼ | %bc |
189 | bd | ½ | %bd |
190 | be | ¾ | %be |
191 | bf | ¿ | %bf |
192 | c0 | À | %c0 |
193 | c1 | Á | %c1 |
194 | c2 | Â | %c2 |
195 | c3 | Ã | %c3 |
196 | c4 | Ä | %c4 |
197 | c5 | Å | %c5 |
198 | c6 | Æ | %v6 |
199 | c7 | Ç | %c7 |
200 | c8 | È | %c8 |
201 | c9 | É | %c9 |
202 | ca | Ê | %ca |
203 | cb | Ë | %cb |
204 | cc | Ì | %cc |
205 | cd | Í | %cd |
206 | ce | Î | %ce |
207 | cf | Ï | %cf |
208 | d0 | Ð | %d0 |
209 | d1 | Ñ | %d1 |
210 | d2 | Ò | %d2 |
211 | d3 | Ó | %d3 |
212 | d4 | Ô | %d4 |
213 | d5 | Õ | %d5 |
214 | d6 | Ö | %d6 |
215 | d7 | × | %d7 |
216 | d8 | Ø | %d8 |
217 | d9 | Ù | %d9 |
218 | da | Ú | %da |
219 | db | Û | %db |
220 | dc | Ü | %dc |
221 | dd | Ý | %dd |
222 | de | Þ | %de |
223 | df | ß | %df |
224 | e0 | à | %e0 |
225 | e1 | á | %e1 |
226 | e2 | â | %e2 |
227 | e3 | ã | %e3 |
228 | e4 | ä | %e4 |
229 | e5 | å | %e5 |
230 | e6 | æ | %e6 |
231 | e7 | ç | %e7 |
232 | e8 | è | %e8 |
233 | e9 | é | %e9 |
234 | ea | ê | %ea |
235 | eb | ë | %eb |
236 | ec | ì | %ec |
237 | ed | í | %ed |
238 | ee | î | %ee |
239 | ef | ï | %ef |
240 | f0 | ð | %f0 |
241 | f1 | ñ | %f1 |
242 | f2 | ò | %f2 |
243 | f3 | ó | %f3 |
244 | f4 | ô | %f4 |
245 | f5 | õ | %f5 |
246 | f6 | ö | %f6 |
247 | f7 | ÷ | %f7 |
248 | f8 | ø | %f8 |
249 | f9 | ù | %f9 |
250 | fa | ú | %fa |
251 | fb | û | %fb |
252 | fc | ü | %fc |
253 | fd | ý | %fd |
254 | fe | þ | %fe |
255 | ff | ÿ | %ff |
保留字符编码
以下是用于编码保留字符的表。
十进制 | 十六进制值 | 烧焦 | 网址编码 |
---|---|---|---|
36 | 24 | $ | %24 |
38 | 26 | & | %26 |
43 | 2b | + | %2b |
44 | 2c | , | %2c |
47 | 2f | / | %2f |
58 | 3a | : | %3a |
59 | 3b | ; | %3b |
61 | 3d | = | %3d |
63 | 3f | ? | %3f |
64 | 40 | @ | %40 |
不安全的字符编码
以下是用于编码不安全字符的表。
十进制 | 十六进制值 | 烧焦 | 网址编码 |
---|---|---|---|
32 | 20 | space | %20 |
34 | 22 | " | %22 |
60 | 3c | < | %3c |
62 | 3e | > | %3e |
35 | 23 | # | %23 |
37 | 25 | % | %25 |
123 | 7b | { | %7b |
125 | 7d | } | %7d |
124 | 7c | | | %7c |
92 | 5c | \ | %5c |
94 | 5e | ^ | %5e |
126 | 7e | ~ | %7e |
91 | 5b | [ | %5b |
93 | 5d | ] | %5d |
96 | 60 | ` | %60 |