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