zoukankan      html  css  js  c++  java
  • httpclient post请求中文乱码解决办法

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

    正文:

    我们都知道,一般情况下使用post请求是不会出现中文乱码的。可是在使用httpclient发送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);

    在接收(服务器)端:

    使用httpclient post请求中文乱码解决办法

    主要代码:

    @RequestMapping(value = "getJson")

    @ResponseBody

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

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

    JSONObject jsonObject = JSONObject.parseObject(requestBody);

    System.out.println(jsonObject);

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

    System.out.println(info);

    //TODO 处理自己业务

    JSONObject result= new JSONObject();

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

    Map<String, Object> resultMap = new HashMap<String, Object>();

    resultMap.put("isok", true);

    return resultMap;

    }

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

  • 相关阅读:
    P3133 [USACO16JAN]无线电联系Radio Contact
    P2196 挖地雷
    P2434 [SDOI2005]区间
    P2820 局域网
    P2904 [USACO08MAR]跨河River Crossing
    P1586 四方定理
    P2983 [USACO10FEB]购买巧克力Chocolate Buying
    P2049 魔术棋子
    kali-linux破解密码运行脚本并隐藏进程
    kali安装使用
  • 原文地址:https://www.cnblogs.com/jtlgb/p/10894670.html
Copyright © 2011-2022 走看看