我正在尝试使用 apache http 客户端制作一个简单的 http 帖子,但我终生无法让它工作。我基于以下示例:http ://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpState.html 。我不认为我的 url、主机或端口有问题的原因是因为我让它们都可以在常规的 html 表单和 telnet 中工作。
我得到的错误是:
org.apache.commons.httpclient.ProtocolException:服务器 somehost.something.com 未能响应有效的 HTTP 响应
这是我的代码:
public InputStream trialPost() {
PostMethod post = new PostMethod("https://somesite.com/example.php");
NameValuePair[] data = {
new NameValuePair("parameter1", "blah"),
new NameValuePair("parameter2", "blah")
};
post.setRequestBody(data);
HttpState hs = new HttpState();
HttpConnection hc = new HttpConnection("somehost.something.com", 443);
InputStream in = null;
try {
hc.open();
post.execute(hs, hc);
in = post.getResponseBodyAsStream();
hc.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// handle response.
return in;
}