码迷,mamicode.com
首页 > Web开发 > 详细

url中拼接中文参数,后台接收为乱码的问题

时间:2019-10-23 10:05:15      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:乱码   rac   back   action   场景   后端   配置   enc   net   

遇到在URL中拼接中文的参数,后台拿到的数据为乱码的问题。

解决的方法是在客户端对这个中文参数进行编码,然后服务端再进行解码就行了。

客户端编码(JavaScript)

var url = "contract!select.action?chineseParam=" + encodeURI(encodeURI("我是中文参数"));

注意:编码的时候需要使用两次encodeURI()方法,写一个就是????号,写两个则输出: %4d%5a这种。

服务端解码(Java)

String chineseParam = java.net.URLDecoder.decode(chineseParam, "UTF-8");

这样就能实现中文参数的前后端传递了。

另外要注意的是,这种方式只有在拼接URL参数的场景下有效,如果是将参数传递放在请求体中,比如AJAX中的data,是不需要对中文参数进行手动编码和解码操作的,只需要保证前后端的编码配置一致即可。

 

"人生最遗憾的,莫过于轻易地放弃了不该放弃的,却固执地坚持了不该坚持的。"

url中拼接中文参数,后台接收为乱码的问题

标签:乱码   rac   back   action   场景   后端   配置   enc   net   

原文地址:https://www.cnblogs.com/yanggb/p/11121566.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!