在URL编码的过程中,经常看到这样的东西,如%2B,%25,这是哪种编码呢?原来就是ASCII码表( American Standard Code for Information Interchange, ASCII ) 。
简单地说,
ASCII码表中和URL编码最相关的部分是:
字符特殊字符的含义 URL编码
# 用来标志特定的文档位置 %23
% 对特殊字符进行编码 %25
& 分隔不同的变量值对 %26
+ 在变量值中表示空格 %2B
/ 表示目录路径 %2F
= 用来连接键和值 %3D
? 表示查询字符串的开始 %3F
详细地说,
标准ASCII 码使用 7 位二进制数来表示所有的大写和小写字母,数字 0 到 9
、标点符号,以及在美式英语中使用的特殊控制字符。
其最高位(b7)用作奇偶校验位。用来检验传送过程中是否出现错误。
以下为标准ASCII表:
Bin Dec Hex 缩写/字符 解释
0 0 0 0 NUL 空字符
0 1 1 1 SOH 标题开始
0 10 2 2 STX 正文开始
0 11 3 3 ETX 正文结束
0 100 4 4 EOT 传输结束
0 101 5 5 ENQ 请求
0 110 6 6 ACK 收到通知
0 111 7 7 BEL 响铃
0 1000 8 8 BS 退格
0 1001 9 9 HT 水平制表符
0 1010 10 0A LF 换行键
0 1011 11 0B VT 垂直制表符
0 1100 12 0C FF 换页键
0 1101 13 0D CR 回车键
0 1110 14 0E SO 不用切换
0 1111 15 0F SI 启用切换
1 0 16 10 DLE 数据链路转义
1 1 17 11 DC1 设备控制1
1 10 18 12 DC2 设备控制2
1 11 19 13 DC3 设备控制3
1 100 20 14 DC4 设备控制4
1 101 21 15 NAK 拒绝接收
1 110 22 16 SYN 同步空闲
1 111 23 17 ETB 传输块结束
1 1000 24 18 CAN 取消/作废
1 1001 25 19 EM 介质中断
1 1010 26 1A SUB 替补
1 1011 27 1B ESC 溢出
1 1100 28 1C FS 文件分割符
1 1101 29 1D GS 分组符
1 1110 30 1E RS 记录分离符
1 1111 31 1F US 单元分隔符
10 0 32 20 空格
10 1 33 21 !
10 10 34 22
10 11 35 23 #
10 100 36 24 $
10 101 37 25 %
10 110 38 26 &
10 111 39 27 ‘
10 1000 40 28 (
10 1001 41 29 )
10 1010 42 2A *
10 1011 43 2B +
10 1100 44 2C ,
10 1101 45 2D -
10 1110 46 2E .
10 1111 47 2F /