HttpURLConnection 因Android版本不同而导致的Bad Request问题,在2.0+不行,4.0+可以
2013-05-16 15:04
435 查看
之前在这个问题上纠结了很久,也换httpClient试过,但是最后居然被细节打败了:
原文出处:http://stackoverflow.com/questions/15030201/issues-with-httpurlconnection-with-post-on-android-2-2?rq=1
其实原因很简单,在给HttpURLConnection 设置request属性的时候,Android4.0+自动对属性的内容中的空格进行了转义替换‘\s’。
但是,Android2.0+ 没有做这个处理,所以有些网络访问一直Bad!
关键例子代码:
原文出处:http://stackoverflow.com/questions/15030201/issues-with-httpurlconnection-with-post-on-android-2-2?rq=1
其实原因很简单,在给HttpURLConnection 设置request属性的时候,Android4.0+自动对属性的内容中的空格进行了转义替换‘\s’。
但是,Android2.0+ 没有做这个处理,所以有些网络访问一直Bad!
关键例子代码:
connection.setRequestProperty("Content-Type", ("application/xml; charset=utf-8").replaceAll("\\s", ""));
相关文章推荐
- Android HttpURLConnection Accept-Encoding: gzip 版本问题
- android 4.0 HttpURLConnection. getInputStream() 为空的问题
- RxJava + httpURLConnectionde 的简单测试demo,可以拿来处理一般的android访问网络的线程问题
- Android 4.0 HttpUrlConnection的getInputStream()方法总是返回空的问题
- 【android】HttpURLConnection 几种不同方法示例【二】
- 关于UrlHttpConnection.setRequestProperty()的调用顺序问题的验证
- Android使用HttpURLConnection的302重定向问题
- 【android】HttpURLConnection 几种不同方法示例【三】
- 开源一个网络库ARHttpRequest,iOS适配NSURLSession/ASIHTTPRequest等,Android适配HttpURLConnection等
- CCHTTPRequestAndroid() 与 curl处理方式不同的问题
- Android使用HttpURLConnection编程遇到的302重定向问题
- [Android]解决HttpURLConnection上传大文件时出现OOM问题
- 【android】HttpURLConnection 几种不同方法示例【上】
- android客户端通过Get方式提交参数给服务器,使用URL和HttpURLConnection实现,以及乱码问题解决
- 关于UrlHttpConnection.setRequestProperty()的调用顺序问题的验证
- 【Android开发那点破事】解决Andriod使用HttpURLConnection 失败问题
- android HttpUrlConnection 设置超时无效,等待时间很长的问题
- 【android】HttpURLConnection 几种不同方法示例【中】
- 我发起一个http url,本地没问题,发布到测试环境后,报错post 400 bad request,原来是测试的tomcat版本比较高,它对post的长度做了限制。
- 关于UrlHttpConnection.setRequestProperty()的调用顺序问题的验证