原文地址:http://www.yshjava.cn/post/423.html
最近Apache HttpClient发布了最新的4.3版本,据说有很多的改进,加入了新的设计思想和理念,使API更加简洁有力,闲来无事,做个Demo尝尝鲜。
在以前的3.x版本中,HttpClient就已经支持HTTPS连接了,但是代码写的比较多,而且用起来感觉挺别扭的,同样的功能,到了4这里,明显得简单清爽多了。
如下是来自官方的一个例子,稍加改造,并翻译了注释:
package cn.ysh.studio.crawler.httpclient; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.auth.AuthScope; import org.apache.http.auth.UsernamePasswordCredentials; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; /** * 演示如何使用HttpClient向需要身份验证的目标服务器发送HTTP请求 * * @author Shenghany * @date 2013-5-19 */ public class ClientAuthentication { public static void main(String[] args) throws Exception { DefaultHttpClient httpclient = new DefaultHttpClient(); try { //添加证书 httpclient.getCredentialsProvider().setCredentials( new AuthScope("localhost", 443), new UsernamePasswordCredentials("username", "password")); //创建GET请求 HttpGet httpget = new HttpGet("https://localhost/protected"); System.out.println("executing request" + httpget.getRequestLine()); //执行请求 HttpResponse response = httpclient.execute(httpget); //获得响应实体 HttpEntity entity = response.getEntity(); System.out.println("----------------------------------------"); System.out.println(response.getStatusLine()); if (entity != null) { System.out.println("Response content length: " + entity.getContentLength()); } //销毁实体 EntityUtils.consume(entity); } finally { // 当不再需要HttpClient实例时,关闭连接管理器以确保释放所有占用的系统资源 httpclient.getConnectionManager().shutdown(); } } }
原创文章,转载请注明出处:http://www.yshjava.cn/post/423.html
相关推荐
帮助程序员快速从Apache的HttpClient 3.x升级到HttpClient 4.x
2013-11-21 15:31 292,890 httpclient-4.0.2.jar 2017-12-20 12:08 351,132 httpclient-4.1.1.jar 2012-08-03 01:45 451,595 httpclient-4.1.2-sources.jar 2012-08-03 01:44 352,254 httpclient-4.1.2.jar 2012-08-...
Apache_HttpClient4.x简明教程高清PDF版.pdf Apache_HttpClient4.x简明教程高清PDF版.pdf
httpclient 4.x 与httpclient3.x已经有很大的区别 该资源简单可用 需要下载最新的httpclient4.1.1包及相关的资源包即可使用
import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods....
含tutorial,commons-logging-1.1.1, commons-codec-1.4-bin.zip, httpcomponents-client-4.0.3-bin.zip, httpcomponents-core-4.1-bin.zip
httpclient4.3.x和其依赖jar包。
HttpClient4.x手动释放底层HTTP连接[借鉴].pdf
JAVA Apache_HttpClient4.x简明教程高清PDF版.pdf
NULL 博文链接:https://chun521521.iteye.com/blog/2422270
《android原生POST、httpClient4.X实现向PHP服务器上传文件》对应源码,博客地址:http://blog.csdn.net/harvic880925/article/details/17565481,奶奶个熊,今天CSDN写个博客都写不成,格式啥啥的完全跟写的时候不...
《httpClient 4.X与PHP服务器通信详解》博文对应源码,博客地址:http://blog.csdn.net/harvic880925/article/details/17416417
httpclient4.5.jar开发架包,包含所需要依赖的架包 。
HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。
httpclient-4.5.3中文版.CHM org.apache.http.auth 客户端HTTP认证API。 org.apache.http.auth.params 已过时。 org.apache.http.client 客户端HTTP通信API。 org.apache.http.client.config 客户端配置API。 ...
http://jakarta.apache.org/commons/httpclient/ org.apache.commons.httpclient.URI org.apache.commons.httpclient.Wire org.apache.commons.httpclient.Cookie org.apache.commons.httpclient.Header org.apache.commons...
org.apache.commons.httpclient-3.1.jar 用于解决httpclient jar包依赖!!!
httpclient使用例子 源码 4.x与4以下的版本
httpclient4.1.2.zip
基于apache httpclient 4.2.X开发 自动处理redirect url jsoup解析response text log4j 自动生成日志 源代码基于UTF-8编码,如果出现乱码请切换到此编码 压缩包 包含所有jar文件。