Carrot_hs
2017-09-26 15:50
采纳率: 33.3%
浏览 8.3k
已采纳

java-Content-Type=“x-www-form-urlencoded”的参数中文乱码

java --jfinal框架使用的是sevlet2.5,接收post请求的带Content-Type=“x-www-form-urlencoded”的参数中文乱码如何处理?使用postman测试的,图片说明upload/201709/26/1506440618_961791.png)请求参数是一个xml,本来的参数是

     <TimeStamp>2017-09-20 10:02:29</TimeStamp>
    <ServiceName>测试中文web.order</ServiceName>
    到服务端,用request.inputStream拿不到数据,所以用paraMap取的参数,结果就是下面的中文乱码了,在网上查了很多方法,试了都无效,包括配置filter,字符串的getBytes("iso-8859-1")转utf-8,进行各种组合的先urlencode再urldecode或者先urldecode再urlencode等等都不行,确定数据传过来的CharEncoding是utf-8,但是日志输出从request中获取到的paraMap就是乱码的了。
        <TimeStamp>2017-09-20 10:02:29</TimeStamp>
    <ServiceName>₩ᄉヒ│ᆵユ¦ᄌᆳ₩ヨヌweb.order</ServiceName>
    想问下各位大神有什么办法吗?
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • cloudyzhao 2017-09-27 00:47
    已采纳

    在head里面修改httpPost.setHeader("Content-type", "x-www-form-urlencoded;charset=UTF-8");

    点赞 评论