URL编码规范
网络标准RFC 1738做了硬性规定:
"...Only alphanumerics [0-9a-zA-Z], the special characters "$-_.+!*'()," [not including the quotes - ed], and reserved characters used for their reserved purposes may be used unencoded within a URL."
“只有字母和数字[0-9a-zA-Z]、一些特殊符号“$-_.+!*'(),”[不包括双引号]、以及某些保留字,才可以不经过编码直接用于URL。”
所以一般网页上的URL都是要经过编码的
编码方法
- encodeURIComponent()
主要适用于对参数的键值对进行编码,其他不进行编码,因为他是对整个URL对所有字符进行编码会将=&+ - encodeURI
适用于编码整个URL只对其中对中文进行编码。他对于以下字符不编码
保留字符 ; , / ? : @ & = + $
非转义的字符 字母 数字 - _ . ! ~ * ' ( )
数字符号 #