encodeURI后台乱码(解决)

window.location.href = xxxx?a=encodeURI(encodeURI(name)) ;
name是中文,页面部分需要编码两次
name = java.net.URLDecoder.decode(name, "UTF-8");

 

为什么要连续两次调用encodeURI(String)方法呢?是因为Java中的request.getParameter(String)方法会进行一次URI的解码过程,调用时内置的解码过程会导致乱码出现。而URI编码两次后,request.getParameter(String)函数得到的是原信息URI编码一次的内容。接着用java.net.URLDecoder.decode(String str,String codename)方法,将已经编码的URI 转换成原文。

 

(转自:http://hi.baidu.com/nonstopzy/blog/item/7b3d7acb83fc3a5af31fe740.html)

你可能感兴趣的:(encodeURI)