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://codercto.com/soft/d/587.html

Python编程实践

Python编程实践

Jennifer Campbell、Paul Gries、Jason Montojo、Greg Wilson / 唐学韬 / 机械工业出版社华章公司 / 2011-12-31 / 49.00元

Python是当今世界流行的编程语言之一。本书共15章,通过一些短小精悍的交互式Python脚本帮助学生进行练习,并在这个过程中掌握诸如数据结构、排序和搜索算法、面向对象编程、数据库访问、图形用户界面等基本概念以及良好的程序设计风格。本书既是一本注重科学的计算机科学专业教材,也是一本目标明确的Python参考书。 本书语言风格言简意赅,图表丰富,简单实用,是一本优秀的Python入门级读物,......一起来看看 《Python编程实践》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码