怎么使用url转码

1. escape 和 unescape

escape()不能直接用于URL编码。

采用unicode字符集对指定的字符串除0-255以外进行编码。
escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z。(不推荐:我在使用aes加密时,出现了+,此时不能编译,后端无法解析就很麻烦了)

unescape就是解码。

2. encodeURI 和 decodeURI

把URI字符串采用UTF-8编码格式转化成escape各式的字符串。
encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z

 encodeURI()用于整个url编码,与上边的区别就是可以直接编译整个url链接,但是局限性也一样,有一些字符不能编译。

3. encodeURIComponent 和 decodeURIComponent(推荐)

与encodeURI()的区别是,它用于对URL的组成部分进行个别编码,而不用于对整个URL进行编码。

因此,"; / ? : @ & = + $ , #",这些在encodeURI()中不被编码的符号,在encodeURIComponent()中统统会被编码。

encodeURIComponent() 常用于参数的传递,这样就不会因为一些特殊字符造成后端无法解析。

猜你喜欢

转载自www.cnblogs.com/shubo168/p/13398004.html
今日推荐