这是一个创建于 3621 天前的主题,其中的信息可能已经有所发展或是发生改变。
现在业务里面部分接口是既提供给客户端也提供给网页使用的,在该入口处打印参数内容,使用Fiddler检测客户端HTTP请求和网页的HTTP请求,header中的Content-Type一致,都是"application/x-www-form-urlencoded; charset=UTF-8"。
当使用客户端的时候Content-Length(94)要小于使用网页时的Content-Length(102)。。。请问为什么呢?header中的各种参数都调成一致的,但是在传输的时候表单数据就不一样了,前者各项参数没有经过任何处理,但后者的参数都被urlencode了。
求教
4 条回复 • 2014-11-06 10:48:45 +08:00
|
|
1
pi1ot 2014-11-06 09:51:09 +08:00
和浏览器的具体实现有关,urlencode的处理字符范围不同
|
|
|
2
odirus 2014-11-06 09:55:11 +08:00
@ pi1ot 现在我都不知道怎么处理比较好,同时需要兼容两种途径的数据传输。
|
|
|
3
pi1ot 2014-11-06 10:39:05 +08:00
|
|
|
4
chemzqm 2014-11-06 10:48:45 +08:00
客户端没有encode说明客户端实现有bug,另外你的 Content-Type 既然指定了 application/x-www-form-urlencoded就表明发送主题应当是编码后的ascii字符,加上charset没有任何意义。
|