get方式获取数据,贴上代码
/**
* GET的方式请求
* @createDate: Apr 2, 2011 5:58:03 PM
* @param http_url
* @param isProxy
* @return
*/
public String doGet(String http_url, boolean isProxy) {
HttpMethod method = null;
try {
URI uri = new URI(http_url, true);
HttpClient client = new HttpClient();
HostConfiguration hcfg = new HostConfiguration();
hcfg.setHost(uri);
client.setHostConfiguration(hcfg);
if (isProxy)
setProxy(client);
// 参数验证
client.getParams().setAuthenticationPreemptive(true);
// GET请求方式
method = new GetMethod(http_url);
client.executeMethod(method);
System.out.println("state:" + method.getStatusLine());
return method.getResponseBodyAsString();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
POST方式获取数据,代码:
/**
* POST方式提交数据
* @createDate: Apr 2, 2011 5:58:03 PM
* @param http_url
* @param isProxy
* @return
*/
public String doPost(String http_url, Map<String, String> paramaters,
boolean isProxy) {
PostMethod method = null;
try {
URI uri = new URI(http_url, true);
HttpClient client = new HttpClient();
HostConfiguration cf = new HostConfiguration();
cf.setHost(uri);
client.setHostConfiguration(cf);
if (isProxy)
setProxy(client);
client.getParams().setAuthenticationPreemptive(true);
method = new PostMethod(http_url);
//添加参数
if(paramaters!=null){
Iterator<Entry<String, String>> its = paramaters.entrySet().iterator();
while (its.hasNext()) {
Entry<String, String> e = its.next();
method.addParameter(e.getKey(), e.getValue());
}
}
client.executeMethod(method);
// 打印服务器返回的状态
System.out.println(method.getStatusLine());
// 输出返回的信息
return method.getResponseBodyAsString();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 释放连接
if(method!=null)
method.releaseConnection();
}
return null;
}
方法中使用到的代理,代码
/**
* 设置代理
* @createDate: Apr 2, 2011 6:03:30 PM
* @param client
*/
private void setProxy(HttpClient client) {
// 设置代理
client.getHostConfiguration().setProxy(HTTP_HOST, HTTP_PORT);
client.getState().setProxyCredentials(AuthScope.ANY,
new UsernamePasswordCredentials(HTTP_USER, HTTP_PWD));
}
附上测试代码
//get测试代码
String str_url = "http://mingnjintian-163-com.iteye.com/blog/985124";
new RequestManager().doGet(str_url,true);
//post测试代码
str_url = "http://mingnjintian-163-com.iteye.com/blog/985124";
new RequestManager().doPost(str_url, new HashMap<String, String>(),true);
分享到:
相关推荐
本文将深入探讨如何使用HttpClient执行GET、POST和PUT操作,同时结合给定的`HttpsRequestUtil.java`源码片段进行解析。 HttpClient库允许我们构建灵活、高效的HTTP客户端,支持多种请求方法,包括GET、POST和PUT。...
接下来,我们讨论如何使用HttpClient进行GET请求。GET请求通常用于获取资源,不涉及请求体: ```java CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet(...
### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...
Apache HttpClient 是一个强大的Java库,用于执行HTTP请求。在4.5.12版本中,它提供了丰富的功能,包括支持HTTP/1.1和部分HTTP/2协议,连接管理,重试策略,以及多种认证机制。这个源码版本是学习HTTP通信、网络编程...
这里我们将深入探讨如何使用Java发送GET和POST请求,以及处理JSON数据。 首先,让我们关注GET请求。GET请求主要用于从服务器获取资源,其参数通常包含在URL中。在Java中,可以使用`HttpURLConnection`类或者第三方...
如果你需要更高级的功能,如支持异步请求、自定义头部或者使用HTTP库,可以考虑使用Apache HttpClient库。在你的项目中,你可能已经包含了名为`HttpsClient`的文件或模块,这个可能是对HttpClient的封装。HttpClient...
Apache HttpClient是一款广泛使用的Java库,专门用于执行HTTP请求。它属于Apache HttpComponents项目的一部分,旨在提供一个高效、灵活且可扩展的HTTP客户端API。在Java应用程序中,如果你需要与Web服务器进行交互,...
它提供了丰富的API,使得开发者可以方便地发送HTTP请求(包括POST和GET)并处理响应,同时还支持文件的上传和下载功能。本文将深入探讨HttpClient如何实现这些功能。 ### POST请求 POST请求通常用于向服务器提交...
HttpClientUtil 是一个用于发送 HTTP 请求的工具类,主要支持 GET 和 POST 方法。它使用了 Apache HttpClient 库,这是一个强大的 Java 客户端编程工具包,用于处理 HTTP 协议。以下是对类中关键方法和概念的详细...
在Java编程中,Apache HttpClient库是一个非常常用的工具,它提供了对HTTP协议的强大支持,包括GET和POST请求。本文将深入探讨如何使用HttpClient进行GET和POST请求,并提供相关的代码示例。 首先,GET请求是最常见...
这个压缩包可能包含了实现HTTP GET和POST请求所需的jar包以及示例代码,帮助开发者理解如何使用HttpClient进行网络通信。下面将详细介绍HttpClient库,HTTP请求的基本概念,以及GET和POST方法的差异。 HttpClient是...
在 Java 中发送 GET 和 POST 请求是非常常见的操作,今天我们将通过使用 Apache HttpClient 库来实现这些操作。 什么是 Apache HttpClient 库? Apache HttpClient 库是 Apache 软件基金会提供的一个开源库,用于...
文件`4.8通过HttpClient异步请求数据`可能是一个示例代码或教程,讲述了如何在Android应用的4.8版本中使用`HttpClient`进行异步数据请求。这个教程可能涵盖了设置请求参数、处理响应、异常处理以及如何在`AsyncTask`...
本教程将聚焦于使用`HttpClient`库进行GET请求,这是获取远程资源最常见的方式。请注意,本教程不涉及POST请求,POST主要用于向服务器提交数据。 ## 1. Android HttpClient介绍 `HttpClient`是Apache HTTP组件的一...
本篇将详细介绍如何使用HttpClient发送HTTP请求,包括POST和GET方法,同时提供相关的jar包依赖以及Java代码示例,并对关键代码进行注解解释。 一、HttpClient库的引入 在Java项目中,首先需要添加HttpClient的jar包...
3. **处理重定向和重试**:HttpClient能够自动处理服务器返回的重定向响应,同时支持自定义重试策略,以应对网络不稳定的情况。 4. **使用认证和安全机制**:它提供了对HTTP基本认证、摘要认证以及OAuth等安全协议...