HTTP请求中的multipartentitybuilder乱码解决:

 因为项目中使用了跨域HTTP请求,最后保存到数据库中一直出现乱码,如下图中的情况,前端传参数据,后台接收一直没定任何问题,最后逐步排查发现是HTTP请求中的请求头出了问题:


最后对比发现builder.addTextBody方法中缺少参数,原方法如下;

 CloseableHttpClient httpClient = HttpClients.createDefault();String result = "";try {HttpPost httpPost = new HttpPost(url);MultipartEntityBuilder builder = MultipartEntityBuilder.create();// 设置表头信息if (token != null) {httpPost.setHeader("token",token);}Set<String> keySet = null;if (params != null && params.size() > 0) {keySet = params.keySet();  }if (keySet != null) {for(String key : keySet) {builder.addTextBody(key, params.get(key));}}               HttpEntity entity = builder.build();httpPost.setEntity(entity);HttpResponse response = httpClient.execute(httpPost);// 执行提交HttpEntity responseEntity = response.getEntity();if (responseEntity != null) {result = EntityUtils.toString(responseEntity, Charset.forName("UTF-8"));}} catch (IOException e) {//异常处理}

于是修改了请求的doPost方法,添加如下:

 if (keySet != null) {for(String key : keySet) {ContentType contentType = ContentType.create("text/plain",Charset.forName("UTF-8"));builder.addTextBody(key, params.get(key),contentType);}}

数据保存无问题。

成功解决,各个情况所面临的问题都不一样,此方法仅供参看。

HTTP请求中文乱码解决办法相关推荐

  1. pycharm 运行控制台中文乱码解决办法

    pycharm 运行控制台中文乱码解决办法

  2. navicat for mysql 显示中文乱码解决办法

    navicat for mysql 显示中文乱码解决办法   最近遇到一个问题,用navicat for mysql 打开数据库时全都显示的是乱码(在用程序代码插入数据之前确保字符不是乱码),遇到问题 ...

  3. NetBeans中文乱码解决办法

    首先来看看网上的一篇文章:http://it.dengchao.org/neatbeans-problem-fedora/linux/ 在Windows和Linux(Fedora/Ubuntu/Red ...

  4. windows下git bash中文乱码解决办法

    一.解决办法1:(直接上图) 1.在git bash下,右键 出现下图,选择options: 2.选择"Text" 3.将"Character set"设置为 ...

  5. java控制台打印输出 中文乱码 解决办法

    java控制台打印输出 中文乱码 解决办法 问题:IDEA控制台打印时出现中文乱码 原因:java资源的编码和ideal的不一致 解决办法: 第一步 1:打开intelliidea安装路径,Intel ...

  6. Web前端——VScode打开html文件中文乱码解决办法

    VScode打开html文件中文乱码解决办法 1.打开VScode后,依次点击 文件 >> 首选项 >> 设置 2.打开设置后,依次点击 文本编辑器 >> 文件(或 ...

  7. php接受get参数乱码,如何解决php get 参数乱码问题,php中文乱码解决办法

    如何解决php get 参数乱码问题如何解决php参数乱码的问题,乱码php获取参数的解决方案:1.使用"iconv ('GB 2312 ',' UTF-8 ',$龚辉):"解决乱 ...

  8. Qt中文乱码解决办法

    目录 一.解决方法: 1. QT4版本 2. QT5版本 二.QString 为什么会乱码呢 三.tr的使用 一.解决方法: 1. QT4版本 中文乱码解决办法是在main.cpp文件加入: #inc ...

  9. php7 中文乱码_PHP 中文乱码解决办法总结分析

    PHP 中文乱码解决办法总结分析 更新时间:2009年07月30日 01:19:43   作者: 总之一句话,要解决PHP中文乱码最好最快的解决办法就是,页面申明的编码与数据库内部编码一致,如果页面申 ...

  10. mysql数据库 中文乱码_数据库 MySQL中文乱码解决办法总结

    MySQL中文乱码解决办法 前言: MySQL是我们项目中非常常用的数据型数据库.但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况.下面就来介绍一下如何彻底解决数据库中文乱码情况. 1 ...

最新文章

  1. 20T数据、百万奖金,同济和武大摘得开放数据创新应用大赛桂冠!
  2. vue可视化拖拽生成工具_vue实现可视化可拖放的自定义表单的示例代码
  3. C语言atoi()函数用法
  4. server 2008访问Server 2003数据慢
  5. 特征检测和跟踪经典理论
  6. C#中删除目录以及目录下文件的方法
  7. 安装 CocoaPods Alcatraz
  8. lua加密教程_我们相信加密! 教程
  9. 使用JavaScript和D3.js实现数据可视化
  10. LeetCode 303. 区域和检索 - 数组不可变(动态规划)
  11. python有什么用-python有什么用(用处和用途)
  12. cas5.3:CAS Server搭建
  13. 蠎周刊 148: 新年
  14. java 求集合真子集_干货 | 集合与函数概念知识点总结
  15. java 算法 pdf_Java 常用算法手册 PDF扫描版[39MB]
  16. SSM房屋租赁系统,房屋合租系统 租房系统 SpringBoot租房系统
  17. 第三章 硅谷宠儿 Friendster (二)
  18. fat32文件系统格式在linux,FAT32文件系统的存储组织结构(一)
  19. hnrxgs伸缩器在管道中的作用以及工作原理
  20. 柯桥小学教师资格证考试:班级突发情况处理

热门文章

  1. 蓝牙调试工具如何使用_更新:使用此有价值的工具改进您的蓝牙项目
  2. 在线c语言编程网站_学编程有哪些好的网站推荐?
  3. 渗透工具-masscan
  4. Python金融大数据风控建模实战
  5. 角色扮演RPG游戏项目
  6. 常见物联网通信技术概览(全集)
  7. 【验证码识别】OpenCV挑战极验滑动拼图验证码
  8. (转)常见数学符号及公式英文发音大全
  9. 项目管理十大知识领域之项目整合管理
  10. WPS 2019|WPS Office 2019官方最新版 v11.1下载