http请求参数编码问题
来源:互联网 发布:最新mac os x镜像下载 编辑:程序博客网 时间:2024/06/05 06:37
给某api发送http请求,结果查不到数据;而api开发者自测可以查到数据。僵持不下。
经过分析发现,我的url是经过urlencode编码的(传出去的中文变成%E5%B2这种),而api开发者的url是明文传输中文。
我通过httpclient发出的请求,使用uribuilder.addParameter追加参数,而该方法会自动将参数按utf-8编码,导致我传出去的url是%E5%B2。而api端没有解码,导致解析成错误的文字,从而查不到数据。
同样的,前端ajax请求,默认是utf-8编码。而springmvc web.xml中配置了如下字符集过滤器,会自动将utf-8编码的value解码,从而实现自动编码解码。如果没配置该字符集过滤器,则会解码失败。
<!-- 字符集 过滤器 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
阅读全文
0 0
- http请求参数编码问题
- http请求之编码问题
- 获取请求参数编码问题
- HTTP请求参数读取问题
- Java发送HTTP请求时编码问题
- 记录一次http请求----中文编码问题
- Http响应和请求的编码问题
- Android 发送HTTP请求出现编码问题
- 请求参数获取与编码问题
- HttpClient 请求参数中文编码问题
- 解决AngularJS Http请求参数问题
- 关于HTTP GET请求的url中文参数编码
- 关于HTTP GET请求的url中文参数编码
- HTTP GET 请求在请求体中带参数的问题
- http请求使用patch,后台Springmvc处理请求参数问题
- 关于http请求编码问题的说明(转)
- HTTP请求和响应中 中文urlEncode urlDecode编码问题
- [随记]web开发需要注意请求参数编码问题
- 解决TextView中MaxLines与ellipsize=end冲突问题
- SQL(二)
- 移动广告变现,这几点可能比推荐算法更重要
- 大型广告系统架构概述
- 从0到1(上)
- http请求参数编码问题
- PHP学习笔记——数组中统计数组元素的个数与唯一性函数
- 如何创建一条可靠的实时数据流
- 数据密集型系统架构设计
- 大众点评的技术部第一个实习生
- 软件工程导论:什么是RUP?什么是极限编程(XP)?什么是敏捷过程?
- 表达树构造-LintCode
- 大型广告系统架构 — 检索模块
- 最优化问题基础框架学习