同样的代码,在JAVA和android里得到的httpresponse不一样为什么呢?
主要代码如下。
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
FileBody bin = new FileBody(new File(fileName));
StringBody comment = new StringBody("Filename: " + fileName);
MultipartEntity reqEntity = new MultipartEntity();
reqEntity.addPart("bin", bin);
reqEntity.addPart("comment", comment);
httppost.setEntity(reqEntity);
HttpResponse response = httpclient.execute(httppost);
HttpEntity resEntity = response.getEntity();
java得到的response内容
android得到的:
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
出现不同结果的原因可能是HttpClient的版本不同造成的,第二个结果也是由HTTP 302响应后重定向到新的URL中的,区别在于Java中默认没有进行重定向。
解决方法就是统一重定向方式
参考:http://stackoverflow.com/questions/5169468/handling-httpclient-redirects
http://stackoverflow.com/questions/3658721/httpclient-4-error-302-how-to-redirect