url编码
url编码是浏览器发送数据给服务器时使用的编码:
- ke1=value1&key2=value2&key3=value3
- q=%E4%B8%AD%E6%96%87
编码规则
- A-Z、a-z、0-9以及-_.*保持不变
- 其它字符以%开头的16进制表示:
- <:%3C
- 中:%E4%B8%AD(UTF-8:0xe4b8ad)
实例
String url = "url 参数";
String encode = URLEncoder.encode(url, "UTF-8");
System.out.println(encode);
String decode = new String(URLDecoder.decode(encode, "UTF-8"));
System.out.println(decode);
输出:
url+%E5%8F%82%E6%95%B0 //空格输出为+,让由于是utf-8编码,每个汉字用3个%xx
url 参数
总结
- url编码是编码算法,不是加密算法
- url编码的目的是把任意文本数据编码为%前缀表示的文本,编码后的文本仅包含A-Z、a-z、0-9、-_.*,%,便于浏览器和服务器处理