特殊字符编码问题,对于链接中有特殊字符的参数必须进行encode,不然会报400错误
比较好的写法:
String param="";
StringBuffer sf = new StringBuffer();
for (HashMap.Entry entry:hashMap.entrySet()
) {
String[] arrStr= new String[0];
try {
arrStr = new String[]{entry.getKey().toString(),
java.net.URLEncoder.encode(entry.getValue().toString(),"utf-8")};
System.out.println(arrStr.toString());
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
String paramString = "&"+param.join("=",arrStr);
sf.append(paramString);
}
=====
java中用于编码的包有两个,一个是java.net下的URLencoder,一个是org.sun.xxxx下的URLencoder,两个类下的encode方法参数都一样,我之前开始使用的sun下的包,结果死活不行,还不报错,坑的一批。
总结的很棒!有空回踩鸭!
online slots play casino online casino games http://onlinecasinouse.com/#