HttpClient基本功能概述
HttpClient是一个强大的HTTP客户端工具,支持GET和POST方法。以下是使用这两种方法的基本步骤:
GET方法
首先,创建HttpClient实例: HttpClient httpClient = new DefaultHttpClient();
然后,创建GetMethod实例,指定目标地址,如:GetMethod getMethod = new GetMethod("...");
getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
new DefaultHttpMethodRetryHandler());
执行请求并获取状态码: int statusCode = httpClient.executeMethod(getMethod);
if (statusCode == HttpStatus.SC_OK) {
处理响应体,可选择不同的方法,如读取字节流、字符串或流:byte[] responseBody = getMethod.getResponseBody();
确保释放连接: getMethod.releaseConnection();
POST方法
POST方法用于提交数据,创建PostMethod实例并设置表单数据:
创建PostMethod实例并指定URL: PostMethod postMethod = new PostMethod(url);
添加表单数据,如清华大学BBS登录: NameValuePair[] data = { new NameValuePair("id", "yourUserName"),
new NameValuePair("passwd", "yourPwd") };
postMethod.setRequestBody(data);
执行POST请求并处理可能的重定向: int statusCode = httpClient.executeMethod(postMethod);
if (statusCode == HttpStatus.SC_MOVED_PERMANENTLY ||
statusCode == HttpStatus.SC_MOVED_TEMPORARILY) {
在所有操作完成后,记得释放连接以释放资源。
扩展资料HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。本文首先介绍 HTTPClient,然后根据作者实际工作经验给出了一些常见问题的解决方法。