前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >httpclient post请求中文乱码解决

httpclient post请求中文乱码解决

作者头像
凯哥Java
发布2019-07-01 13:50:08
7.1K0
发布2019-07-01 13:50:08
举报
文章被收录于专栏:凯哥Java凯哥Java凯哥Java

概要:

在使用httpclient发送post请求的时候,接收端中文乱码问题解决。

正文:

我们都知道,一般情况下使用post请求是不会出现中文乱码的。可是在使用httpclient发送post请求报文含中文的时候在发送端数据正常但是到了服务器端就中文乱码了。

解决办法:

发送端进行设置编码如下:

主要代码:

if (null != jsonParam) {

//解决中文问题。

method.addHeader("Content-type","application/json; charset=utf-8");

method.setHeader("Accept", "application/json");

method.setEntity(new StringEntity(jsonParam.toString(), Charset.forName("UTF-8")));

}

HttpResponse result = httpClient.execute(method);

在接收(服务器)端:

主要代码:

@RequestMapping(value = "getJson")

@ResponseBody

public Map getJson(@RequestBody String requestBody, HttpServletRequest request){

requestBody = new String(requestBody.getBytes(), Charset.forName("utf-8"));

JSONObject jsonObject = JSONObject.parseObject(requestBody);

ResultJsonInfo info = JSONObject.parseObject(jsonObject.toJSONString(), ResultJsonInfo.class);

//TODO 处理自己业务

JSONObject result= new JSONObject();

result.put("success", "true");

Map resultMap = new HashMap();

resultMap.put("isok", true);

return resultMap;

}

这样处理之后。再次请求。乱码问题解决。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-10-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档