public String xmlHttpPost(String requestInfo, String urlAddress, boolean isProxy,
String proxyHost, int proxyPort, ContentType contentType) {
String responseInfo = null;
InputStream inputResStream = null;
try {
CloseableHttpClient httpClient = null;
if (isProxy) {
HttpHost proxy = new HttpHost(proxyHost, proxyPort);
DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy);
httpClient = HttpClients.custom().setRoutePlanner(routePlanner).build();
}else{
httpClient = HttpClients.createDefault();
}
StringEntity stringEntity = new StringEntity(requestInfo, contentType);
HttpPost post = new HttpPost(urlAddress);
post.setEntity(stringEntity);
log.info("urlAddress: " + urlAddress.trim() + " proxyHost: " + proxyHost.trim() + " proxyPort: " + proxyPort);
CloseableHttpResponse response = httpClient.execute(post);
try {
HttpEntity entity = response.getEntity();
if (entity != null) {
inputResStream = entity.getContent();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(inputResStream));
StringBuffer resBuffer = new StringBuffer();
String resTemp = "";
while ((resTemp = br.readLine()) != null) {
resBuffer.append(resTemp);
}
responseInfo = resBuffer.toString();
} finally {
inputResStream.close();
}
}
} finally {
response.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return responseInfo;
}
分享到:
相关推荐
1. **创建HttpClient实例**:首先需要创建一个HttpClient对象,可以选择预设的HttpClientBuilder或直接使用DefaultHttpClient。 2. **设置请求参数**:包括URL、HTTP方法(GET、POST等)、请求头、实体内容等。 3....
通过构建一个HttpClient实例,我们可以配置各种连接参数,如连接超时、重试策略等,并发起HTTP请求。 2. `HttpRequestBase`:这是一个抽象类,代表HTTP请求的基本实现,如HttpGet、HttpPost等。开发者可以根据需求...
Jakarta HttpComponents HTTPClient 。httpclient-4.3.5.jar
开发者需要先引入httpclient-4.3.5.jar和httpcore-4.3.2.jar这两个库,然后可以通过HttpClient提供的API创建和执行HTTP请求,通过HttpCore的连接管理机制优化网络通信。 总的来说,HttpClient和HttpCore是Java开发...
接下来,我们讨论如何使用HttpClient进行GET请求。GET请求通常用于获取资源,不涉及请求体: ```java CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet(...
try(CloseableHttpClient httpClient = HttpClients.createDefault()) { HttpPost httpPost = new HttpPost(url); StringEntity stringEntity = new StringEntity(params, Charset.forName("UTF-8")); ...
httpclient-4.3.5-sources.jar
首先,需要创建一个`HttpClient`实例,然后使用`HttpGet`类构建一个GET请求,并设置请求URL。接下来,调用`execute()`方法来执行请求,最后解析返回的响应。 ##### 示例代码: ```java public static String ...
本文档主要介绍了如何在JSP中使用HttpClient发起POST请求,包括POST方法的基本概念、使用步骤以及具体实例。这对于理解如何通过HttpClient在JSP中发送POST请求非常有帮助。 #### 二、POST方法的概念 POST方法是一种...
本篇文章将深入探讨如何使用HTTPClient发送POST请求,以及相关的项目结构和实现细节。 首先,"post-demo"项目定义了我们需要调用的接口。通常,这会是一个Web服务,可能是一个RESTful API,提供特定的功能或数据。...
要创建一个简单的HttpClient实例,你需要以下步骤: 1. 引入Apache HttpClient库: 在你的项目中,确保已经添加了Apache HttpClient的依赖。例如,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```...
至此,我们已经成功地使用Java的HttpClient库将一个对象转换为XML字符串,并以二进制流的方式发送到了服务器。这个过程中涉及的关键技术包括对象到XML的转换(JAXB)、流操作(ByteArrayOutputStream和...
### 使用HttpClient发送POST请求,并获取响应内容 #### 一、简介 在现代软件开发中,尤其是在Web应用领域,客户端与服务器之间的通信是非常重要的环节。Java作为一种广泛应用的编程语言,提供了多种方式来实现这一...
在本实例中,我们将深入探讨如何使用HttpClient来发送请求以及处理返回的数据。 首先,让我们了解HttpClient的基本用法。Apache HttpClient库提供了一个`CloseableHttpClient`接口,它是执行HTTP请求的主要入口点。...
总结起来,使用Apache HTTPClient库以POST方式发送JSON数据涉及的主要步骤包括:配置HttpClient实例、创建HttpPost对象、构建JSON实体、设置请求头和执行请求。通过这种方式,你可以方便地与Web服务进行交互,传递...
javase http通讯技术 apache httpclient4.3 设置代理详解
httpclient的用法,发送get请求和post请求,设置header
本文将深入讲解如何使用HttpClient来发送HTTP请求,以及相关的源码分析。 首先,让我们了解HttpClient的基本用法。Apache HttpClient库提供了丰富的功能,包括GET、POST、PUT等各种HTTP方法的支持。以下是一个简单...