URL拼接参数时可能会遇到一下特殊字符的情况,如果不做特殊处理再解析参数时会遇到问题。URL中的特殊字符与Base64与URL中交叉的特殊字符如下:
1.URL特殊字符
空格 | '' | # | & | ( | ) | + | , | / | : | ; | < | = | > | ? | @ | \ | | |
%20 | %22 | %23 | %26 | %28 | %29 | &2B | %2C | %2F | %3A | %3B | %3C | %3D | %3E | %3F | %40 | %5C | %7C |
2.BSSE64后涉及的特殊字符
+ | 空格 | / | ? | % | & | = | # |
%2B | %20 | %2F | %3F | %25 | %26 | &3D | %23 |
3.URLEncoder处理
URLEncoder.encode(urlToken)
URLEncoder.encode(urlToken, "UTF-8")
URLDecoder.decode(urlToken)
URLDecoder.decode(urlToken, "UTF-8")