java web项目get,post请求参数中文乱码解决
在开发过程中,有时候会碰到get,post请求参数中文乱码。
原因:
Http请求传输时将url以ISO-8859-1编码,服务器收到字节流后默认会以ISO-8859-1编码来解码成字符流(造成中文乱码)
解决方案一:
在后台接收到参数后,对参数进行解码操作。
缺点:
对每个可能的出现的中文参数,都要进行解码,麻烦,硬编码,扩展性弱。
String str = URLDecoder.decode((new String(admin.getUsername().getBytes("ISO8859-1"), "UTF-8")), "UTF-8");
解决方案二:
在tomcat安装目录下的conf目录下的server.xml添加如下配置:
添加两项配置含义:
useBodyEncodingForURI参数表示是否用request.setCharacterEncoding参数对URL提交的数据和表单中GET方式提交的数据进行重新编码,在默认情况下,该参数为false。
URIEncoding参数指定对所有GET方式请求进行统一的重新编码(解码)的编码。
URIEncoding和useBodyEncodingForURI区别:
URIEncoding是对所有GET方式的请求的数据进行统一的重新编码,
而useBodyEncodingForURI则是根据响应该请求的页面的request.setCharacterEncoding参数对数据进行的重新编码,不同的页面可以有不同的重新编码的编码。
分享到:
相关推荐
java HttpClient 发送GET请求和带有表单参数的POST请求教程例子
使用过滤器实现GET请求和POST请求的中文乱码问题,只需在自己的Web应用中的web.xml中配置该filter即可使用。
java实现get请求post请求,文件传输 /** * 发送https请求 * @param requestUrl 请求地址 * @param requestMethod 请求方式(GET、POST) * @param outputStr 提交的数据 * @return 返回微信服务器响应的信息 ...
自定义Filter来解决web项目中的乱码问题,包括get请求和post请求,使用包装设计模式。
java实现对象转化为get请求的param参数String字符串,本人自测非常好用,一般对象可以转化键值对的格式,但是最近项目需要自己手动拼接对象作为get请求的参数,百度了一堆还不如自己写一个,欢迎各位使用,有什么...
java解决解决get中文乱码问题,在项目中多次使用,从未有错!
java调用HTTP接口(Get请求和Post请求)
使用java发送get和post请求实践
get post 请求中文乱码 处理方式一(小实例+说明文档)
Java中解决POST和GET请求的中文乱码问题.doc
参看文档:http://blog.csdn.net/sinat_29398599/article/details/52880036
C++Http上传文件到web服务器,解决中文参数乱码问题,微软提供的Chttpconnect 类在请求http头参数是中文时出现乱码
利用httpclient-4.3.1.jar、httpcore-4.3.jar包,很简单的用java实现httpget和httppost请求。
java发送http/https请求(get/post)代码,java 通过发送json,post请求,返回json数据的方法 java 通过发送json,post请求,返回json数据的方法
httpclient get/post请求工具类(map参数封装),方便调用
java发送get,post请求,可以实现与后台交互,代码便捷高效,是原生代码,支持并发性;代码结构清晰易懂,容易上手;
https://blog.csdn.net/myWorld001/article/details/109261850
本文给大家介绍Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法,涉及到java获取post请求参数的方法,感兴趣的朋友一起看看吧
java的get和post请求,获取json的工具类,https时会存在ssl校验的问题,工具会自动去除ssl校验。
用java实现带参数发送post请求,以body方式传参的get请求,以pathValue方式传参的get请求