书写URL
时使用的是ASCII
字符集,它是一种单字节字符的编码方案,一共收录了128个字符,用一个字节就能够存储,好比字符a
用二进制就能够表示为01100001
。128个并很少,因此若是URL
中含有非ASCII
字符集中的字符,就要对其编码。安全
除此以外,还须要对URL
中的保留(reserved)字符和不安全(unsafe)字符进行编码。编码
所谓保留字符就是那些在URL
中具备特定意义的字符,不安全字符是指那些在URL
中没有特殊含义,但在URL
所在的上下文中可能具备特殊意义的字符,好比双引号(“”
)。spa
下图是一些保留字符和不安全字符示例:code
编码时,使用的是%编码
规范。具体说明以下:图片
URL
中的非保留字符和非不安全字符不进行编码。URL
中的保留字符和不安全字符,须要取其ASCII
内码,而后加上%
前缀,将该字符进行编码。URL
中的非ASCII
字符,须要取其Unicode
内码,而后加上%
前缀,将该字符进行编码。