问题描述:

当使用.NET编写Winform程序,构建Http Post 请求,并传递若干参数给远程服务器时,如果参数中包含加号'+'等符号时,http请求发送后,服务器收到并解析时,加号会被解码为空格。

举例说明:

若参数中含有:fileName = "[宫崎骏作品全集+Ghibli相关作品].txt"
此时,传递到服务器上以后,服务器接收到的数据会变成:[宫崎骏作品全集 Ghibli相关作品].txt
加号会变成空格!
(如果全程都使用的utf-8编码格式)

错误原因:

我没有深究原因,宽泛的说,就是在传输前后过程中,经历的几次编码和解码标准不同,导致加号、空格等字符的错误。

简单的解决方法:

遇到这种情况时,一种快速的解决方法是: 把参数中所有的加号“+”,替换为“%2B”即可
(可能这种方法并不好,应该可以采用传递前对数据进行某格式的encode,获取数据时进行decode即可)

如何解决Http请求参数中加号变空格问题相关推荐

  1. 解决获取请求参数的乱码问题

    解决获取请求参数的乱码问题,可以使用SpringMVC提供的编码过滤器CharacterEncodingFilter,但是必须在web.xml中进行注册 <!--配置springMVC的编码过滤 ...

  2. 解决base64通过http传输后+变空格的问题

    解决base64通过http传输后+变空格的问题 参考文章: (1)解决base64通过http传输后+变空格的问题 (2)https://www.cnblogs.com/zwsblogs/p/918 ...

  3. 解决url请求参数带中文时后台获取出现乱码问题

    第一种方法: var url = encodeURI(url);前端js先编码一次, 后台:String test=newString(request.getParameter("test& ...

  4. 网址中请求参数中%2c

    %2c是用 URL 编码形式表示的 ASCII 字符"," listRequest.hotelBrandIDs=56& listRequest.hotelBrandIDs= ...

  5. ajax post 空格变加号,Ajax Post数据加号变空格详解

    我在页面上得到BASE64编码想通过AJAX方式与后台交互,但是后台得到的数据所有的+号都变成了空格,查了一下. 采用Ajax传递数据时,通常会将数据整理为data="var1=abc&am ...

  6. 图片base64加号变空格

    异常:illegal base64 character 20 原因:后端看到字符串中"+"全都变为了空格 处理:将base64字符串中"+"替换为"% ...

  7. SSM中通过okhttp3向接口发送xml格式的请求参数

    场景 在SSM项目中的后台Controller中需要想asp的接口发送xml格式的请求参数. 依据接口文档示例代码. 入参: <Request><ServiceCode>get ...

  8. Spring/SpringBoot 过滤器修改、获取http 请求request中的参数 和 response返回值,比如修改请求体和响应体的字符编码

    通过自定义filter,RequestWrapper,ResponseWrapper 处理请求和响应数据,比如修改请求体和响应体的字符编码 1.request 和 response 中的数据都是 存在 ...

  9. GET方式请求参数中文乱码问题 [JavaWeb][Servlet]

    请求参数中文乱码问题(GET) 同样的我们要解决GET方式下的请求参数中文乱码问题,那么我们首先要知道GET请求方式之下为什么中文数据就会出现乱码? 因为我们GET方式之下的请求参数是在请求行中,是紧 ...

最新文章

  1. CAN 总线 之七 BOSCH CAN 位时序 和 同步
  2. 解决MySQL删除外键时报错Error Code: 1091. Can‘t DROP ‘XXX‘; check that column/key exists
  3. QT:基本知识(一);
  4. java 添加用户 数据库,跟屌丝学DB2 第二课 建立数据库以及添加用户
  5. 流浪地球开机动画包zip_【文娱热点】流浪地球2定档2023大年初一;迪士尼计划裁员32000人...
  6. 监听器入门看这篇就够了
  7. 双十一最具性价比机型,Redmi K30S至尊纪念版上手体验
  8. SAP License:结算金额大于可支配金额
  9. 1039. Course List for Student (25)
  10. php程序里的configini_PHP读取配置文件类实例(可读取ini,yaml,xml等)
  11. windows server 2012 更改网络位置
  12. linux分配设备编号
  13. 一个程序员的真实故事上
  14. 引流产品用哪些比较合适?什么样的产品适合做引流?
  15. 上海市医药学校计算机房,上海市医药学校校内比价文件综合楼三楼机房信息发布及广播配套.DOC...
  16. verilog实现奇数分频--以三分频为例
  17. 2022年12月蓝桥STEMA评测C++中级组编程题
  18. linux查询对外2827端口运行文件,lsof介绍
  19. oeasy教您玩转vim - 23 - 配置文件
  20. redis源码学习-03_动态字符串SDS

热门文章

  1. 7、Node.js EventEmitter
  2. java生成扑克牌----java基础学习总结
  3. manjaro使用国内软件源
  4. C/C++如何传递二维数组?
  5. c++的ORM解决方案 -- ODB
  6. WPF/Silverlight深度解决方案:(十六)传值实现
  7. Spring IDE 1.2.4发布
  8. 存在于实数域的微观粒子7-神经网络与电磁场
  9. 电脑qq文件服务器地址,在电脑上接收QQ地理位置打不开,提示获取不到详细地址...
  10. leetcode103JAVA_[LeetCode] 103. Binary Tree Zigzag Level Order Traversal Java