使用HttpClient的一般步骤:
1:创建HTTPClient实例
2:创建某种连接方法的实例,并且传入URL
3:使用HTTPClint实例调用executeMethod,参数为某连接方法的实例
4:接收该方法的返回的状态,并对该状态进行判断
5:接收Response的返回值
6:释放连接
示例:
GET
1:创建实例
HTTPClient client = new HTTPClient()
2:创建GET连接方法实例
GetMethod get = new GetMethod(URL);
3:调用方法,获取状态
int status = client.executeMethod(get);
4:根据状态不同调用不同的处理方式,以下为状态为200,即正常的情况下
String result = get.getResponseBodyAsString();
5:释放连接
get.releaseConnection()
完整示例如下:
public class Test(){
public static void main(String[] args){
String url = "";
String result = null;
HttpClient client = new HttpClient();
GetMethod method = new GetMethod(url);
try{
int status = client.executeMethod(method);
if(status==200){
result = method.getResponseBodyAsString();
}
} catch(HttpException e){
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
} catch(Exception e){
e.printStackTrace();
} finally{
method.releaseConnection();
}
}
}
POST
1:创建实例
HTTPClient client = new HTTPClient()
2:创建GET连接方法实例
PostMethod post = new PostMethod(URL);
3:获取POST参数
post.setRequestBody(data);
4:调用方法,获取状态
int status = client.executeMethod(post);
5:根据状态不同调用不同的处理方式,以下为状态为200,即正常的情况下
String result = get.getResponseBodyAsString();
6:释放连接
get.releaseConnection()
完整示例如下:
public class Test(){
public static void main(String[] args){
//获取请求的参数
String data = "test";
String url = "http://www.test.com";
String result = null;
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(url);
method.setRequestBody(data);
try{
int status = client.executeMethod(method);
if(status==200){
result = method.getResponseBodyAsString();
}
} catch(HttpException e){
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
} catch(Exception e){
e.printStackTrace();
} finally{
method.releaseConnection();
}
}
}
分享到:
相关推荐
一、HttpClient基础 HttpClient的核心类是`org.apache.http.client.HttpClient`,它是执行HTTP请求的入口点。创建HttpClient实例后,可以调用`execute()`方法发起GET、POST等不同类型的HTTP请求。例如: ```java ...
1. **HttpClient基础知识**: - HttpClient是Apache的一个开源项目,提供了强大的HTTP协议处理能力,支持GET、POST、PUT等多种HTTP请求方法。 - HttpClient提供了一个基于连接池的连接管理器,可以有效地管理HTTP...
HttpClient基础 #### 1.1 请求执行 - **HTTP请求**:HttpClient用于构建和发送HTTP请求。 - **HTTP响应**:描述了对来自服务器的响应的处理,包括读取状态行、头部信息和主体内容。 - **操作消息头**:说明了如何...
三、HttpClient基础使用 1. 创建HttpClient实例 HttpClient的核心是`HttpClient`对象,我们可以通过`HttpClients.createDefault()`创建一个默认配置的实例。例如: ```java CloseableHttpClient httpClient = ...
1.HttpClient基础 1.1 请求执行 - 1.1.1 HTTP请求:讲解了如何创建和配置HTTP请求,包括请求的方法(如GET、POST、PUT、DELETE等)、路径、查询参数、请求头等。 - 1.1.2 HTTP响应:如何处理HTTP响应,包括状态码、...
一、HttpClient基础 HttpClient库提供了一套完整的API,允许我们构建复杂的HTTP请求。它支持GET、POST、PUT等多种HTTP方法,以及Cookie管理、重定向处理、身份验证等功能。PostMethod是HttpClient中用于执行POST请求...
1. **HttpClient基础**:HttpClient 4.x的初始化和配置,包括创建HttpClient实例,设置连接池,处理重定向和重试策略。 2. **请求构造**:如何构建HTTP请求,包括添加请求头、设置请求方法、携带请求体等。比如,...
1. HttpClient基础 1.1 请求执行 1.1.1 HTTP请求:HttpClient支持创建和配置HTTP请求,包括GET、POST、PUT、DELETE等方法。 1.1.2 HTTP响应:处理从服务器返回的响应,理解响应码和响应体。 1.1.3 消息头处理:...
一、HttpClient基础 HttpClient的主要组件包括`HttpClient`、`HttpRequest`、`HttpResponse`和`HttpEntity`。`HttpClient`是整个HTTP操作的发起者,负责管理连接和执行请求。`HttpRequest`代表了HTTP请求,`...
httpclient必备基础jar包,HttpClient client=new HttpClint();1.3版本!
三、HttpClient基础用法 1. 创建HttpClient实例: HttpClient的实例化通常是通过`HttpClientBuilder`完成的,可以设置各种参数,如连接超时、重试策略等。 2. 发送GET请求: 使用`HttpGet`类创建GET请求,并通过`...
除了基础的GET和POST请求,HttpClient还提供了许多高级特性,如: - **重试策略**:通过`HttpRequestRetryHandler`可以定制请求失败后的重试行为。 - **连接管理**:`PoolingHttpClientConnectionManager`允许配置...
一、HttpClient基础 HttpClient库提供了一套完整的API,允许开发者构建复杂的HTTP请求,包括GET、POST、PUT等多种HTTP方法。它支持异步和同步操作,具有可扩展性和灵活性,可以处理重定向、cookies、认证等高级特性...
例如,我们可以通过以下方式发送一个GET请求: CloseableHttpClient httpclient = HttpClients.createDefault(); HttpGet httpget = new HttpGet("https://example.com/"); CloseableHttpResponse response = ...
它是HttpClient进行网络通信的基础。 7. `httpmime-4.x.x.jar`: 这个库扩展了HttpClient,支持MIME类型的HTTP请求,如上传文件、处理多部分表单数据等。 8. `log4j-1.2.x.jar`: 这是一个日志记录框架,通常与...
同时,HttpClient依赖于HttpCore库,这是Apache提供的基础HTTP协议处理组件,httpcore-4.4.1.jar即为该组件的4.4.1版本,提供了HTTP连接管理、请求/响应模型等核心功能。 **一、HttpClient基本概念** 1. **...
1. **HttpClient对象**:HttpClient是所有操作的基础,它代表一个HTTP客户端,可以配置连接管理器、请求执行器等组件。 2. **HttpMethod**:HttpClient提供了多种HttpMethod子类,如GetMethod、PostMethod等,分别...
2. `httpcore-4.x.x.jar`: 这是HttpClient的基础组件,提供了网络通信的基本功能,如套接字连接和输入/输出流处理。 3. `httpmime-4.x.x.jar`: 这个库扩展了HttpClient,支持在HTTP请求中处理MIME类型的数据,比如...
2. **HttpCore库**:`httpcore-x.x.x.jar`是HttpClient的基础组件,提供HTTP协议的基本操作,如连接管理、请求/响应处理等。HttpClient依赖HttpCore来处理底层的网络通信。 3. **HTTP协议支持**:HttpClient支持...