Java的HTTP协议库 HttpComponents

码农软件 · 软件分类 · 网络工具包 · 2019-03-04 08:42:42

软件介绍

HttpComponents 也就是以前的httpclient项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端/服务器编程工具包,并且它支持 HTTP 协议最新的版本和建议。不过现在的 HttpComponents 包含多个子项目,有:

  • HttpComponents Core

  • HttpComponents Client
  • HttpComponents AsyncClient
  • Commons HttpClient

以下列出的是 HttpClient 提供的主要的功能,要知道更多详细的功能可以参见 HttpClient 的主页。

  • 实现了所有 HTTP 的方法(GET,POST,PUT,HEAD 等)

  • 支持自动转向

  • 支持 HTTPS 协议

  • 支持代理服务器等

  • 支持Cookie

HttpClient 示例代码:

DefaultHttpClient httpclient = new DefaultHttpClient();
try {
	HttpGet httpget = new HttpGet("https://portal.sun.com/portal/dt");

	HttpResponse response = httpclient.execute(httpget);
	HttpEntity entity = response.getEntity();

	System.out.println("Login form get: " + response.getStatusLine());
	EntityUtils.consume(entity);

	System.out.println("Initial set of cookies:");
	List<Cookie> cookies = httpclient.getCookieStore().getCookies();
	if (cookies.isEmpty()) {
		System.out.println("None");
	} else {
		for (int i = 0; i < cookies.size(); i++) {
			System.out.println("- " + cookies.get(i).toString());
		}
	}

	HttpPost httpost = new HttpPost("https://portal.sun.com/amserver/UI/Login?" +
			"org=self_registered_users&" +
			"goto=/portal/dt&" +
			"gotoOnFail=/portal/dt?error=true");

	List <NameValuePair> nvps = new ArrayList <NameValuePair>();
	nvps.add(new BasicNameValuePair("IDToken1", "username"));
	nvps.add(new BasicNameValuePair("IDToken2", "password"));

	httpost.setEntity(new UrlEncodedFormEntity(nvps, Consts.UTF_8));

	response = httpclient.execute(httpost);
	entity = response.getEntity();

	System.out.println("Login form get: " + response.getStatusLine());
	EntityUtils.consume(entity);

	System.out.println("Post logon cookies:");
	cookies = httpclient.getCookieStore().getCookies();
	if (cookies.isEmpty()) {
		System.out.println("None");
	} else {
		for (int i = 0; i < cookies.size(); i++) {
			System.out.println("- " + cookies.get(i).toString());
		}
	}

} finally {
	// When HttpClient instance is no longer needed,
	// shut down the connection manager to ensure
	// immediate deallocation of all system resources
	httpclient.getConnectionManager().shutdown();
}

本文地址:https://www.codercto.com/soft/d/587.html

数据结构

数据结构

邓俊辉 / 清华大学出版社 / 2013-9 / 39.00元

《清华大学计算机系列教材:数据结构(C++语言版)(第3版)》按照面向对象程序设计的思想,根据作者多年的教学积累,系统地介绍各类数据结构的功能、表示和实现,对比各类数据结构适用的应用环境;结合实际问题展示算法设计的一般性模式与方法、算法实现的主流技巧,以及算法效率的评判依据和分析方法;以高度概括的体例为线索贯穿全书,并通过对比和类比揭示数据结构与算法的内在联系,帮助读者形成整体性认识。一起来看看 《数据结构》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具