HTML - URL编码

URL编码是将URL中具有特殊含义的不可打印字符或字符转换为明确且由Web浏览器和服务器普遍接受的表示的实践.这些字符包括 :

  • ASCII控制字符 : 通常用于输出控制的不可打印字符.字符范围为00-1F十六进制(十进制0-31)和7F(十进制127).下面给出了完整的编码表.

  • 非ASCII控制字符 : 这些是超过128个字符的ASCII字符集的字符.该范围是ISO-Latin字符集的一部分,包括ISO-Latin集合80-FF hex(十进制128-255)的整个"上半部分".下面给出了完整的编码表.

  • 保留字符 : 这些是特殊字符,例如美元符号,&符号,加号,常用,正斜杠,冒号,分号,等号,问号和"at"符号.所有这些都可以在URL中具有不同的含义,因此需要进行编码.下面给出了完整的编码表.

  • 不安全字符 : 这些是空格,引号,小于符号,大于符号,磅字符,百分比字符,左卷曲支撑,右卷曲支撑,管道,反斜杠,插入,Tilde,左方括号,右方括号,严重重音.由于各种原因,这些字符可能会在URL中被误解.这些字符也应始终进行编码.下面给出了完整的编码表.

编码符号用三个字符替换所需的字符:百分号和两个十六进制数字对应于ASCII字符集中字符的位置.

示例

最常见的特殊字符之一是空格.您无法直接在URL中键入空格.字符集中的空格位置是20个十六进制数.因此,在将请求传递给服务器时,您可以使用%20代替空格.

http://www.example.com/new%20pricing.htm

此URL实际上从www.example.com检索名为"new pricing.htm"的文档

ASCII控制字符编码

这包括字符范围00-1F十六进制(0-31十进制)和7F(十进制127)的编码

Decimal十六进制值字符URL编码
000 %00
101 %01
202 %02
303 %03
404 %04
505 %05
606 %06
707 %07
808退格%08
909tab%09
100alinefeed%0a
110b %0b
120c %0c
130d回车%0d
140e %0e
150f %0f
1610 %10
1711 %11
1812 %12
1913 %13
2014 %14
2115 %15
2216 %16
2317 %17
2418 %18
2519 %19
261a %1a
271b %1b
281c %1c
291d %1d
301e %1e
311f %1f
1277f %7f

非ASCII控制字符编码

这包括ISO-Latin套装80-FF hex(128255十进制)的整个"上半部分"的编码.

Decimal十六进制值字符网址编码
12880%80
12981
%81
13082%82
13183ƒ%83
13284"%84
13385...%85
13486%86
13587%87
13688
%88
13789%89
1388aŠ%8a
1398b<%8b
1408CŒ%8c
1418d
%8d
1428eŽ%8e
1438f
%8f
14490
%90
14591'%91
14692'%92
14793"%93
14894"%94
14995%95
15096-%96
15197-%97
15298%98
15399%99
1549aš%9a
1559b>%9b
1569cœ%9C
1579d
%9d
1589ež%9e
1599fŸ%9f
160a0
%a0
161a1¡%a1
162a2¢%a2
163a3£%a3
164a4¤%a4
165a5¥%a5
166a6|%a6
167a7§%a7
168a8¨%a8
169a9©%a9
170aaª%aa
171ab«%ab
172ac¬% ac
17 3ad
%ad
174ae®%ae
175af¯%af
176b0°%b0
177b1±% b1
178b2²%b2
179b3³%b3
180b4'%b4
181b5μ%b5
182b6%b6
183b7·%b7
184b8¸%b8
185b9¹%b9
186baº%ba
187bb»%bb
188bc¼%bc
189BD½%bd
190
¾%be
191bf¿%bf
192c0À%c0
193c1Á%c1
194c2
%c2
195c3Ã%c3
196c4Ä%c4
197c5Å%c5
198c6Æ%v6
199c7Ç%c7
200c8È%c8
201c9É%c9
202caÊ%ca
203cbË%cb
204ccÌ%cc
205cdÍ%cd
206ceÎ%ce
207cfÏ%cf
208d0Ð%d0
209d1Ñ%d1
210d2Ò%d2
211d3Ó%d3
212d4Ô%d4
213d5Õ%d5
214d6Ö%d6
215d7×%d7
216d8Ø%d8
217d9Ù%d9
218daÚ%da
219dbÛ%db
220dcÜ%dc
221ddÝ%dd
222d eÞ%de
223dfß%df
224e0à%e0
225e1á%e1
226e2
%e2
227e3ã%e3
228e4ä%e4
229e5å%e5
230e6æ%e6
231e7ç%e7
232e8è%e8
233e9é%e9
234eaê%ea
235ebë%eb
236ec"%ec
237edí%ed
238EEI%ee的
239efï%ef
240f0ð%f0
241f1ñ%f1
242f2ò%f2
243f3ó%f3
244f4ô%f4
245f5õ%f5
246f6ö%f6
247f7÷%f7
248f8ø%f8
249f9ù%f9
250faú%fa
251fbû%fb
252fcü%fc
253fdý%fd
254feþ%fe
255ffÿ%ff

保留字符编码

以下是用于编码保留字符的表.

十进制十六进制值CharURL Encode
3624$%24
3826&%26
432b+%2b
442c%2c
472f/%2f
583a:%3a
593b;%3b
613d=%3d
633f%3f
6440@40%

不安全的字符编码

以下是用于编码不安全字符的表.

Decimal十六进制值字符网址编码
3220space%20
3422"%22
603c<%3c
623e>%3e
3523%23
3725%25
1237b{%7b
1257d}%7d
1247c|%7c
925c\%5c
945e^%5e
1267e%7e
915b[%5b
935d]%5d
9660`%60