由于httpclient的每个版本及每次更新都会有或多或少的改变,所以本人建议所有的使用httpclient的新手一定要仔细查看官方给出的examples,这会给我们省去很多麻烦,一般如果是二进制文件的话,examples在httpcomponents-client-4.5.2-bin\httpcomponents-client-4.5.2\examples\org\apache\http\examples\client这样类似的目录下,如果是源文件目录路径也基本不变,最基本的就是quickstart.java这个文件,基本内容大致如下:
package org.apache.http.examples.client; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpEntity; import org.apache.http.NameValuePair; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; public class QuickStart { public static void main(String[] args) throws Exception { CloseableHttpClient httpclient = HttpClients.createDefault(); try { HttpGet httpGet = new HttpGet("http://httpbin.org/get"); CloseableHttpResponse response1 = httpclient.execute(httpGet); // The underlying HTTP connection is still held by the response object // to allow the response content to be streamed directly from the network socket. // In order to ensure correct deallocation of system resources // the user MUST call CloseableHttpResponse#close() from a finally clause. // Please note that if response content is not fully consumed the underlying // connection cannot be safely re-used and will be shut down and discarded // by the connection manager. try { System.out.println(response1.getStatusLine()); HttpEntity entity1 = response1.getEntity(); // do something useful with the response body // and ensure it is fully consumed EntityUtils.consume(entity1); } finally { response1.close(); } HttpPost httpPost = new HttpPost("http://httpbin.org/post"); List <NameValuePair> nvps = new ArrayList <NameValuePair>(); nvps.add(new BasicNameValuePair("username", "vip")); nvps.add(new BasicNameValuePair("password", "secret")); httpPost.setEntity(new UrlEncodedFormEntity(nvps)); CloseableHttpResponse response2 = httpclient.execute(httpPost); try { System.out.println(response2.getStatusLine()); HttpEntity entity2 = response2.getEntity(); // do something useful with the response body // and ensure it is fully consumed EntityUtils.consume(entity2); } finally { response2.close(); } } finally { httpclient.close(); } } }
相关推荐
这个jar包是Apache HttpClient的4.1.3版本,发布于2012年,是HttpClient的一个稳定版本。 在Apache HttpClient 4.1.3中,包含了以下关键知识点: 1. **HTTP方法支持**:HttpClient 支持HTTP协议的各种方法,如GET...
这个jar包是Apache HttpClient的核心组件,广泛应用于各种Java应用程序,尤其是那些需要与Web服务进行交互的场景。 在Apache HttpClient中,你可以: 1. **创建HTTP请求**:HttpClient允许你轻松地构造GET、POST...
在本文中,我们将深入探讨HttpClient的核心概念、主要功能以及如何使用它来实现网络爬虫。 **HttpClient 主要特点** 1. **异步和同步API**: HttpClient 提供了同步和异步两种API,以适应不同的应用场景。同步API...
在阅读博文《网络爬虫 apache HttpClient》时,作者可能详细介绍了如何初始化HttpClient实例,设置请求参数,处理响应,以及如何利用HttpClient进行多线程爬虫开发。文章可能还会涵盖一些实战案例,比如抓取特定网站...
在标题"org.apache.commons.httpclient相关资源包"中,我们可以看出这是关于使用Apache HttpClient进行HTTP通信的知识点。Apache HttpClient库是Apache软件基金会的一个项目,它提供了对HTTP协议的全面支持,包括GET...
- `LICENSE.txt`:包含了Apache Commons HttpClient的许可协议,它遵循Apache 2.0许可证,允许免费使用和修改源代码。 - `README.txt`:一般提供了项目的简介和快速入门指南。 - `NOTICE.txt`:通常列出库中可能包含...
此外,Apache HttpClient库已经被弃用,现在推荐使用Java 7及更高版本内置的`java.net.HttpURLConnection`或更现代的库如Apache HttpClient 4.x或OkHttp。不过,对于理解HTTP客户端编程的基本原理,HttpClient仍然是...
有两种常见的方法:一是使用`java.net.URLConnection`类,二是通过Apache HttpClient库。这篇文章将对比这两种方法,探讨它们的优缺点以及适用场景。 `java.net.URLConnection`是Java标准库中的一个类,可以直接...
本教程将基于标题"HTTPClient简单使用"和提供的文件`HttpService`、`HttpClient`来阐述HTTPClient的基本使用方法。 1. **HTTPClient简介** HTTPClient是Apache的 HttpClient库,它为Java开发者提供了全面的HTTP...
使用HttpClient,你可以创建一个`HttpClient`实例,然后配置各种参数,如连接超时、重试策略、Cookie管理等。此外,`HttpMethod`接口定义了HTTP方法,如`HttpGet`、`HttpPost`,它们可以用来构造具体请求。 在HTTP...
Apache HttpClient 是一个提供 HTTP 协议客户端功能的开源库,它是 Apache Jakarta Commons 下的一个项目。HttpClient 的功能包括但不限于 HTTP 请求的执行、响应的处理、连接管理、异常处理、协议拦截器以及重定向...
HttpClient是个很不错的开源框架(org.appache.http),封装了访问http的请求头,参数,内容体,响应等等,使用起来更方面更强大。 HttpURLConnection是java的标准类,可以实现简单的基于URL请求、响应功能,什么都...
3. **使用方式**:在项目中引入`org.apache.commons.httpclient-3.1.0.jar`后,可以通过创建`HttpClient`实例,配置各种参数,然后调用`executeMethod`方法来发送HTTP请求。例如,发送一个GET请求: ```java ...
例如,创建HttpClient实例,设置请求参数,发送请求并处理响应,所有这些操作都可以通过简单的API调用来完成,大大简化了网络编程的工作。此外,HTTPClient还提供了连接池管理,可以在多个请求之间重用连接,进一步...
要创建一个简单的HttpClient实例,你需要以下步骤: 1. 引入Apache HttpClient库: 在你的项目中,确保已经添加了Apache HttpClient的依赖。例如,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```...
同时,注意HttpClient库已经不再更新,对于新的Java项目,推荐使用现代化的HTTP客户端库,如Apache HttpClient的后继者Apache HTTP Components HttpClient 4.x系列,或者使用Java标准库的`java.net.http.HttpClient`...
本篇文章将详细讲解HttpClient的使用方法,包括如何搭建环境、所需的jar包、基本应用以及实例演示,旨在帮助初级学员快速掌握HttpClient的基础操作。 一、环境搭建 在使用HttpClient之前,首先需要在项目中引入...