您的位置:首页 > 理论基础 > 计算机网络

HttpClient基础知识

2015-01-13 17:01 211 查看
使用HttpClient的一般步骤:

1:创建HTTPClient实例

2:创建某种连接方法的实例,并且传入URL

3:使用HTTPClint实例调用executeMethod,参数为某连接方法的实例

4:接收该方法的返回的状态,并对该状态进行判断

5:接收Response的返回值

6:释放连接

 

示例:

GET

1:创建实例

Java代码  


HTTPClient client = new HTTPClient()  

 2:创建GET连接方法实例

Java代码  


GetMethod get = new GetMethod(URL);  

 3:调用方法,获取状态

Java代码  


int status = client.executeMethod(get);  

 4:根据状态不同调用不同的处理方式,以下为状态为200,即正常的情况下

Java代码  


String result = get.getResponseBodyAsString();  

 5:释放连接

Java代码  


get.releaseConnection()  

 

完整示例如下:

Java代码  


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:创建实例

Java代码  


HTTPClient client = new HTTPClient()  

 2:创建GET连接方法实例

Java代码  


PostMethod post = new PostMethod(URL);  

3:获取POST参数

Java代码  


post.setRequestBody(data);  

4:调用方法,获取状态

Java代码  


int status = client.executeMethod(post);  

 5:根据状态不同调用不同的处理方式,以下为状态为200,即正常的情况下

Java代码  


String result = get.getResponseBodyAsString();  

 6:释放连接

Java代码  


get.releaseConnection()  

完整示例如下:

Java代码  


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基础