编码是将字符,数字和其他特殊字符等字符序列放入专用格式以进行有效传输的过程。
解码是将编码格式转换回原始字符序列的过程。它与我们通常误解的加密完全不同。编码和解码用于数据通信和存储。编码不应用于传输敏感信息。
URL只能使用ASCII字符集通过Internet发送,并且在URL包含除ASCII字符之外的特殊字符的情况下,需要对其进行编码。网址不包含空格,并替换为加号(+)或%20
。
浏览器(客户端)将根据网页中使用的字符集对输入进行编码,HTML5中的默认字符集为UTF-8
。
下表显示了字符的ASCII
符号及其相等的符号,最后是它的替换,可以在将URL传递给服务器之前在URL中使用 -
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 |
58 | : |
%3A |
59 | ; |
%3B |
60 | > |
%3C |
61 | = |
%3D |
62 | < |
%3E |
63 | ? |
%3F |
64 | @ |
%40 |
91 | [ |
%5B |
92 | \ |
%5C |
93 | ] |
%5D |
94 | ^ |
%5E |
123 | { |
%7B |
124 | Ι | %7C |
125 | } |
%7D |
126 | ~ |
%7E |
> 127 | |
用%xx 编码,其中xx 是字符的十六进制表示 |