書寫URL
時使用的是ASCII
字符集,它是一種單字節字符的編碼方案,一共收錄了128個字符,用一個字節就能夠存儲,好比字符a
用二進制就能夠表示爲01100001
。128個並很少,因此若是URL
中含有非ASCII
字符集中的字符,就要對其編碼。安全
除此以外,還須要對URL
中的保留(reserved)字符和不安全(unsafe)字符進行編碼。編碼
所謂保留字符就是那些在URL
中具備特定意義的字符,不安全字符是指那些在URL
中沒有特殊含義,但在URL
所在的上下文中可能具備特殊意義的字符,好比雙引號(「」
)。spa
下圖是一些保留字符和不安全字符示例:code
編碼時,使用的是%編碼
規範。具體說明以下:圖片
URL
中的非保留字符和非不安全字符不進行編碼。URL
中的保留字符和不安全字符,須要取其ASCII
內碼,而後加上%
前綴,將該字符進行編碼。URL
中的非ASCII
字符,須要取其Unicode
內碼,而後加上%
前綴,將該字符進行編碼。