`

HttpClient example 学习一(快速开始)

    博客分类:
  • java
 
阅读更多
package org.apache.http.examples.client;

import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

public class QuickStart {

	public static void main(String[] args) throws Exception {
		DefaultHttpClient httpclient = new DefaultHttpClient();
		HttpGet httpGet = new HttpGet("http://www.baidu.com");

		HttpResponse 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 either fully consume the response content or abort
		// request
		// execution by calling HttpGet#releaseConnection().

		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 {
			httpGet.releaseConnection(); // 释放
		}

		/*
		HttpPost httpPost = new HttpPost("http://www.iteye.com");
		List<NameValuePair> nvps = new ArrayList<NameValuePair>();
		nvps.add(new BasicNameValuePair("username", "vip"));
		nvps.add(new BasicNameValuePair("password", "secret"));
		httpPost.setEntity(new UrlEncodedFormEntity(nvps));
		HttpResponse 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 {
			httpPost.releaseConnection();
		}
		*/
	}
}

 

分享到:
评论

相关推荐

    httpClient组件使用说明

    本篇文章将详细讲解HttpClient的使用方法,包括如何搭建环境、所需的jar包、基本应用以及实例演示,旨在帮助初级学员快速掌握HttpClient的基础操作。 一、环境搭建 在使用HttpClient之前,首先需要在项目中引入...

    httpclient-4.5.3 中文API

    版本4.5.3是HttpClient的一个稳定版本,提供了丰富的功能和优化,对于Java开发者来说,理解和使用中文API文档无疑大大降低了学习和使用门槛。本文将深入探讨HttpClient 4.5.3的核心概念、主要功能以及常用API。 1. ...

    用httpclient-4.0-alpha2 打造基于http协议的网站分析器

    此外,由于项目标签中有"源码"和"工具",这表明该项目不仅提供了实现的代码,还可能是一个可以复用的工具,方便其他开发者快速集成到自己的项目中,用于批量分析网站数据,如抓取网页链接、获取元信息等。...

    Android Asynchronous HTTPClient的实现和优化

    在Android开发中,网络通信是应用的核心功能之一,而`Android Asynchronous HTTPClient`(也称为AsyncHttpClient)是一个流行的库,用于实现异步HTTP请求,它使得开发者可以在不阻塞主线程的情况下执行网络操作,...

    Httpclient资源包.zip

    这个"Httpclient资源包.zip"可能会包含上述概念的代码示例,帮助开发者快速上手和优化HttpClient的使用。学习和掌握HttpClient的用法,能够使你在开发Web服务客户端时更加得心应手,提升项目的稳定性和效率。

    httpclient小例子

    本教程将通过一个简单的示例,帮助新手快速理解如何使用HttpClient进行网络通信。 首先,我们需要在项目中引入HttpClient的相关依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;...

    jtool-httpclient:httpclient上的简单封装

    然而,HttpClient的使用虽然强大,但其API设计相对复杂,对于初学者或者希望快速实现网络请求的开发者来说,可能会感到困扰。为了解决这一问题,"jtool-httpclient"应运而生,它是一个基于HttpClient的轻量级封装,...

    jpush-api-c#-example.rar

    在本示例中,我们关注的是使用C#语言开发的极光推送服务端代码,这个名为"jpush-api-c#-example.rar"的压缩包包含了相关的源代码和资源,旨在帮助开发者快速理解和集成极光推送功能,特别是如何在Android平台上设置...

    httpcomponents-client-5.0-bin.zip

    5. **更好的错误处理**:新版本提供了更完善的错误处理机制,包括更清晰的异常类型和丰富的诊断信息,帮助开发者快速定位和解决问题。 6. **配置灵活性**:HttpClient 5.0 提供了高度可配置的选项,允许开发者...

    HTTPApplication.rar

    HttpClient适合处理复杂的HTTP操作,如多部分上传、自定义头部或代理设置,而HttpURLConnection则适合简单快速的请求,且由于其内置的连接池和自动管理,对于现代Android应用来说,通常能提供更好的性能和内存管理。...

    C# 简单测试请求和正则的小工具

    在IT行业中,C#是一种广泛使用的编程语言,尤其在开发桌面应用、游戏、以及Web服务等领域。本项目“C#简单测试...通过学习和理解其内部实现,开发者可以提升自己的C#技能,并对网络请求和正则表达式有更深入的理解。

    Laravel开发-api-proxy-laravel

    借助 `thinkingmik/api-proxy-laravel`,我们可以快速地在 Laravel 应用中实现这一功能,同时利用其提供的中间件机制来满足特定需求。熟悉并掌握这一技术将极大地提升你在开发 web 应用时的灵活性和安全性。

    android http同步与异步通讯包

    总之,这个"android http同步与异步通讯包"是一个实用的开发工具,可以帮助开发者快速实现网络通信功能,同时提供了一个学习HTTP通信的好机会。通过研究和使用这些源码,你可以更好地理解和掌握Android中同步与异步...

    EasyHttp_HTTP_并发_httpweb_post/get_EasyHttp_

    10. **示例与文档**:为了帮助开发者更好地理解和使用 EasyHttp,它通常会提供丰富的示例代码和详细的文档说明,使学习过程更加顺畅。 在实际开发中,通过导入 `EasyHttp.dll` 文件,我们可以直接引用这个库,然后...

    webmagic学习积累

    WebMagic是一款用Java语言编写的高性能网络爬虫框架,主要用于快速地抓取网页资源。它不仅功能强大且使用简便,适用于各种不同规模的爬虫项目。本文将详细介绍WebMagic的基本概念、核心组件以及通过实例演示如何使用...

    Zylsoft product s.rar

    HTTPClient.URL := 'http://example.com/api'; HTTPClient.Method := zmPost; HTTPClient.ContentType := 'application/json'; HTTPClient.RequestBody := '{"key":"value"}'; if HTTPClient.Execute then ...

    C_#_基本语法介绍_C#基本语法介绍_学习C#轻松无比_

    本教程将深入介绍C#的基本语法,帮助你快速上手并提升编程技巧。 一、变量与数据类型 在C#中,变量是用来存储数据的容器,必须先声明其数据类型。C#支持多种数据类型,包括整型(int、byte、short、long)、浮点型...

    android简单联网

    HttpClient提供了一个更高级的API来处理网络请求。 ```java HttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet("http://example.com/api"); HttpResponse response = httpClient....

    c#网络爬虫程序设计源码

    C#是一种广泛应用于Windows平台和.NET框架的编程语言,它以其强大的类型安全性和简洁的语法深受程序员喜爱...这个源码程序的设计思路清晰,适合初学者参考学习,能够帮助程序员快速掌握网络爬虫的基本原理和实践技巧。

Global site tag (gtag.js) - Google Analytics