`
sw1982
  • 浏览: 511193 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Httpclient4.3实例。 每个版本接口变更都巨大

 
阅读更多

 

1.新增简单的url请求内容返回, 比较时髦的链调用

 

		try {
			Content returnContent = Request.Get("http://www.qq.com")
			.execute().returnContent();
			System.out.println(returnContent.toString());
		} catch (ClientProtocolException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

 

2. 一套demo方法, 含模拟登录,获取cookie,并把cookie带入后面的请求中

 

		CookieStore cookieStore = new BasicCookieStore();

		HttpClientContext context = HttpClientContext.create();
		context.setCookieStore(cookieStore);
		
		RequestConfig globalConfig = RequestConfig.custom().setCookieSpec(CookieSpecs.BROWSER_COMPATIBILITY).build();
		
		CloseableHttpClient httpclient = HttpClients.custom().
				setDefaultRequestConfig(globalConfig)
				.setDefaultCookieStore(cookieStore).build();		
		// 登录
		HttpPost loginPost = new HttpPost("https://www.xxx.com/account/login.php");
		List<NameValuePair> nvps = new ArrayList<NameValuePair>();  
        nvps.add(new BasicNameValuePair("email", email));  
        nvps.add(new BasicNameValuePair("password", pwd));  
        loginPost.setEntity(new UrlEncodedFormEntity(nvps,"UTF-8"));  
        CloseableHttpResponse  loginResp = httpclient.execute(loginPost,context);
        try {
//            System.out.println(loginResp.getStatusLine());
            HttpEntity entity1 = loginResp.getEntity();
            EntityUtils.consume(entity1);
        } finally {
            loginResp.close();
        }

        for (int i = START_PAGE; i < END_PAGE; i++) {
        	Thread.sleep(SLEEP_TIME);
			//获取交易
			HttpGet get = new HttpGet(
					"https://www.xxx.com/trade/index.php?a=history&t=0&amt_begin=0&amt_end=0&date_begin=&date_end=&pn="+i);
			HttpClientContext context1 = HttpClientContext.create();
			context1.setCookieStore(cookieStore);
			HttpResponse dealResp = httpclient.execute(get, context1);
			try {
				HttpEntity dealEntity = dealResp.getEntity();
				String body = EntityUtils.toString(dealEntity);
				prasepage(body);
				EntityUtils.consume(dealEntity);
			} finally {
				loginResp.close();
			}
		}	

 

 HttpGet 参数拼装代码示例:

		String base = "http://api.map.baidu.com/geosearch/v3/nearby?";

	    List<NameValuePair> params = new LinkedList<NameValuePair>();
		params.add(new BasicNameValuePair("ak", JobConstans.ak));
		params.add(new BasicNameValuePair("geotable_id", geotable_id));
		params.add(new BasicNameValuePair("filter", filter.filter));
		params.add(new BasicNameValuePair("page_index", String.valueOf(filter.page_index)));
		params.add(new BasicNameValuePair("page_size", String.valueOf(filter.page_size)));
		params.add(new BasicNameValuePair("location", filter.location));
		params.add(new BasicNameValuePair("sortby", filter.sortby));
		params.add(new BasicNameValuePair("radius", String.valueOf(filter.radius)));
	    String paramString = URLEncodedUtils.format(params, "utf-8");
	    base += paramString;

 

分享到:
评论
1 楼 baoqianglang 2014-06-24  
  

相关推荐

    httpclient4.3工具类

    总结起来,`httpclient4.3工具类`是一个针对HttpClient 4.3的自定义包装,它封装了常见的HTTP操作,提供了便捷的接口供项目中使用。理解这个工具类的内部实现和HttpClient的核心概念,将有助于更好地利用它进行HTTP...

    httpclient4.3 封装工具类

    HttpClient 4.3版本是对该库的一次重要更新,提供了更多的功能和优化。这个封裝工具类是对HttpClient 4.3进行的二次开发,旨在简化HTTP请求的处理,解决一些常见的问题,如代理设置、多线程并发请求、SSL安全连接...

    httpclient4.3.x及其依赖jar包

    HttpClient 4.3.x是该库的一个重要版本,它提供了丰富的功能和改进,使得开发者能够更方便地与Web服务器进行交互。在本文中,我们将深入探讨HttpClient 4.3.x的核心特性、依赖关系以及如何在实际项目中应用。 **...

    httpClient4.3 Jar包 demo

    在这个"httpClient4.3 Jar包 demo"中,你将找到HttpClient 4.3的jar文件以及相关的示例代码,对于学习和理解HttpClient的使用非常有帮助。 HttpClient 4.3主要知识点包括: 1. **基础概念**: - **HttpClient对象...

    httpClient4.3

    HttpClient 4.3 版本是该库的一个稳定版本,提供了许多改进和新特性,以增强性能和易用性。 HttpClient 4.3 的核心概念包括: 1. **HttpClient 实例**:这是执行 HTTP 请求的基础。开发者通常会创建一个 ...

    HttpClient4.3需要的jar

    HttpClient 4.3是一个重要的版本,它提供了许多改进和新特性,使得开发者可以更高效、更灵活地与Web服务器进行交互。这个压缩包包含了HttpClient 4.3版本所需的jar文件和其他依赖库,以确保能够正确运行基于...

    httpclient4.3 和 httpcore4.4

    本文将深入探讨HttpClient 4.3和HttpCore 4.4这两个版本的关键特性、改进及使用方法。 HttpClient 4.3是一个重大的更新,它引入了诸多增强功能和性能优化。首先,HttpClient 4.3支持了HTTP/1.1和HTTP/2协议,使...

    httpClient4.3官方包

    这个"httpClient4.3官方包"包含了HttpClient 4.3.1版本的所有源代码和必要的文档文件,使得用户可以直接在自己的项目中使用或进行深入学习。 HttpClient 4.3版本引入了许多改进和新特性,如支持最新的HTTP/1.1和...

    httpclient 4.3 中文版

    每个 HTTP 请求都包含一个请求行,其中包括方法名称、请求的 URI 以及 HTTP 版本号。HttpClient 支持 HTTP/1.1 版本定义的所有 HTTP 方法,包括 GET、HEAD、POST、PUT、DELETE、TRACE 和 OPTIONS。对于每种方法,...

    HTTPClient 4.3.X

    标题 "HTTPClient 4.3.X" 涉及的是Apache HttpClient库的一个版本,这是一个广泛使用的Java库,用于实现客户端HTTP通信。这个库为开发者提供了丰富的功能,包括发送HTTP请求,处理响应,管理连接池,处理cookies,...

    httpclient-4.3.jar

    其版本4.3是该库的一个重要迭代,提供了诸多改进和新特性,旨在提升性能、稳定性和易用性。本文将深入探讨HttpClient 4.3的核心功能、主要特性以及使用方法。 一、核心功能 1. HTTP协议支持:HttpClient 4.3全面...

    httpclient4.3所需jar包

    HTTPClient是Java编程中用于处理HTTP协议的库,版本4.3是一个常用且稳定的版本。在进行网络爬虫开发时,HTTPClient库扮演了至关重要的角色,它提供了丰富的功能,如发起HTTP请求、处理响应、管理Cookie、实现重试...

    HttpClient4.3教程共51页.pdf.zip

    HttpClient 4.3版本是一个重要的里程碑,它引入了许多新特性、优化和改进,旨在提高性能,增强稳定性和易用性。这个教程可能是针对开发者设计的,帮助他们深入理解和有效地使用HttpClient 4.3进行网络请求。 ...

    httpclient4.3中文教程

    总结来说,HttpClient 4.3 是一个专为 HTTP 通信设计的库,它提供了高效、易用的接口,用于构造和执行各种 HTTP 请求。开发者可以利用它来实现与 Web 服务的交互、爬虫、数据抓取等任务,而无需关心底层的网络细节。...

    httpclient4.3登陆人人

    标题中的“httpclient4.3登陆人人”指的是使用Apache HttpClient 4.3版本实现对人人网的自动登录功能。HttpClient是一个流行的开源Java库,它允许开发者执行HTTP请求并处理响应,广泛应用于网络爬虫、自动化测试和...

    httpClient4.3文档 PDF

    HttpClient 4.3是其一个重要的版本,提供了许多新特性和改进,以提升性能和易用性。这个压缩包包含两份文档,一份是.docx格式,一份是.pdf格式,两者内容相同,都是关于HttpClient 4.3的中文版指南。 HttpClient的...

    HttpClient 4.3教程.rar

    在HttpClient 4.3版本中,这个库进行了许多改进和优化,使其更适用于复杂的网络通信需求。本教程将详细介绍HttpClient 4.3的主要特性和使用方法。 一、HttpClient简介 HttpClient是一个Java库,它允许开发人员执行...

    httpclient4.3 封装工具类.zip

    4. **线程安全**:HttpClient 4.3不是线程安全的,所以在多线程环境中,通常每个线程都应有自己的HttpClient实例或使用连接池来管理。 5. **性能优化**: - **连接池**:通过配置连接池大小,可以提高并发性能,...

    httpclient4.3 设置代理

    javase http通讯技术 apache httpclient4.3 设置代理详解

    Httpclient 4.3 jar包

    HttpClient 4.3.x 版本是该库的一个稳定版本,提供了丰富的功能和优化,使得开发者可以方便地处理HTTP通信。这个jar包包括两个主要的组件:`httpclient-4.3.3.jar` 和 `httpmime-4.3.jar`。 1. **HttpClient组件...

Global site tag (gtag.js) - Google Analytics