HTTPS POST工作在Gingerbread而不是Froyo?

时间:2011-09-12 15:08:11

标签: android https http-post

以下是一段有问题的代码:

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
HttpClient mHttpClient = new DefaultHttpClient();
nameValuePairs.add(new BasicNameValuePair(strName1, strValue1));
nameValuePairs.add(new BasicNameValuePair(strName2, strValue2));
post = new HttpPost(strPostURL);
post.setEntity(new UrlEncodedFormEntity(nameValuePairs, HTTP.UTF_8));
HttpResponse response = mHttpClient.execute(post);

strPostURL以“https://”开头。

此代码在最后一行失败 - 抛出以下异常:

WARN/System.err(7151): org.apache.http.client.ClientProtocolException
WARN/System.err(7151): Caused by: org.apache.http.ProtocolException: The server failed to respond with a valid HTTP response

我已经针对Froyo(2.2)和Gingerbread(2.3.3)平台尝试了此代码,它仅适用于2.3.3。仿真器也有相同的结果。

当我在我的测试服务器上尝试常规HTTP POST时,Froyo和Gingerbread都运行良好,因此必须有一些特定的HTTPS导致此问题。

如果有问题,我也使用httpmime-4.1.2.jar来处理代码后面的多部分附件,所以这个jar包含在我的构建路径中。

有人可以指出我做错了吗?

0 个答案:

没有答案