`
dh189
  • 浏览: 135306 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

java httpClient4.0 通过代理认证访问网站

    博客分类:
  • java
阅读更多
httpClient4.0 通过代理认证访问网站

import java.io.IOException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

public class Main {

	public static void main(String[] args) throws ClientProtocolException, IOException {
		//实例化一个HttpClient
		HttpClient httpClient = new DefaultHttpClient();
		//设定目标站点   
		HttpHost httpHost = new HttpHost("www.dh189.com");
		//设置代理对象 ip/代理名称,端口   
		httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, new HttpHost("192.168.0.101", 3128));
		//实例化验证   
		CredentialsProvider credsProvider = new BasicCredentialsProvider();
		//设定验证内容   
		UsernamePasswordCredentials creds = new UsernamePasswordCredentials("test", "test");
		//创建验证   
		credsProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT), creds);
		((DefaultHttpClient) httpClient).setCredentialsProvider(credsProvider);
		// 目标地址     
		HttpGet httpget = new HttpGet("/");
		// 执行     
		HttpResponse response = httpClient.execute(httpHost, httpget);
		//请求成功   
		if (HttpStatus.SC_OK == response.getStatusLine().getStatusCode()) {
			HttpEntity entity = response.getEntity();
			if (entity != null) {
				System.out.println(EntityUtils.toString(entity));
			}
			if (entity != null) {
				entity.consumeContent();
			}
		}
		//释放资源
		httpClient.getConnectionManager().shutdown();
	}

}

分享到:
评论

相关推荐

    httpclient4.0-jar

    此外,HttpClient 4.0还支持异步操作,通过非阻塞I/O(NIO)模式,能够更好地利用系统资源,提高应用程序的响应速度。 在使用HttpClient时,首先需要在项目中引入相关的jar包。在这里,我们有三个关键的jar文件: ...

    httpclient4.0

    《HttpClient 4.0:Java 开发中的网络通信利器》 HttpClient 4.0 是一个由 Apache 软件基金会开发的 Java 库,专为处理 HTTP 协议而设计。这个版本在功能、性能和易用性上都有显著提升,是 Java 开发者进行网络通信...

    httpclient4.0 使用帮助、例子

    本篇文章将详细介绍HTTPClient 4.0的使用方法,包括其核心概念、基本操作和示例代码。 一、核心概念 1. HttpClient实例:HttpClient对象是执行HTTP请求的核心,负责建立连接、发送请求和接收响应。通过`...

    基于Java + HTTPClient 4.0,采用MySQL存储爬取数据,支持多进程并发执行的新浪微博爬虫

    【作品名称】:基于Java + HTTPClient 4.0,采用MySQL存储爬取数据,支持多进程并发执行的新浪微博爬虫 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训...

    基于JavaHTTPClient 4.0,采用MySQL存储爬取数据,支持多进程并发执行详细文档+资料齐全.zip

    基于JavaHTTPClient 4.0,采用MySQL存储爬取数据,支持多进程并发执行详细文档+资料齐全.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行...

    Httpclient4.0和3.0及jsoup等相关jar包

    1.含有官方HttpClient4.0的jar包 2.有之前HttpClient3.0的jar包,就是import importorg.apache.commons.*; 3.包含jsoup,解析HTML的jar包 4.包含jcookie.jar及jtidy-r938.jar的jar包.

    httpclient4.0源文件

    《HttpClient 4.0源码解析》 HttpClient是一款由Apache软件基金会开发的开源HTTP客户端库,主要用于处理HTTP请求和响应。HttpClient 4.0版本是其一个重要里程碑,它提供了更加强大、灵活和稳定的网络通信功能。在这...

    原创: httpclient 4.0 使用 - 访问开心网的各种组件 例子

    本文将详细讲解如何使用 HttpClient 4.0 访问开心网的各种组件,并通过具体实例进行深入解析。 一、HttpClient 4.0 概述 HttpClient 4.0 提供了对 HTTP 协议的全面支持,包括 GET、POST、PUT、DELETE 等方法,以及...

    httpclient-4.0.jar

    httpclient-4.0.jar, httpclient-4.0.jar, httpclient-4.0.jar

    HttpClient 4.0学习

    HttpClient是Apache基金会开发的一个HTTP客户端库,主要用于处理HTTP请求和响应。HttpClient 4.0版本引入了许多改进和新特性,...开发者可以通过深入学习HttpClient 4.0,提升网络编程的能力,更好地处理网络通信问题。

    HttpClient 4.0的post()方法4个关键“头信息”设置

    在探讨HttpClient 4.0的`post()`方法中四个关键“头信息”的设置之前,我们首先需要理解HttpClient是什么以及它在Java开发中的作用。 ### HttpClient简介 HttpClient是Apache的一个开源项目,它为Java应用程序提供...

    HttpClient 4.0中文教程

    ### HttpClient 4.0中文教程知识点总结 #### 一、HttpClient概述 **1.1 执行请求** - **HTTP请求**: HTTP请求包含了方法名称(GET、POST等)、URL以及必要的请求头信息。HttpClient允许开发者创建并发送这些请求...

    httpclient-4.0-beta1.jar

    httpclient-4.0-beta1.jar

    [原创] Java 天气预告 - htmlparser2.0 + httpclient4.0

    【Java天气预告】项目是基于htmlparser2.0和httpclient4.0这两个库实现的,主要用于抓取和解析网络上的天气信息。这个项目对于学习Java网络编程和HTML解析非常有帮助,它揭示了如何利用HTTP协议获取网页数据以及如何...

    Android升级后旧版本的httpclient4.0

    Android升级后旧版本的httpclient4.0 apache-mime4j-0.6 commons-codec-1.4 commons-logging-1.1.1 httpclient-4.0.1 httpcore-4.0.1 httpmime-4.0.1

    java httpclient 模拟登录

    在"java httpclient 模拟登录"这个场景下,我们通常会用到HttpClient来模拟用户登录网站的过程,获取登录后的session信息,以便后续能够访问登录后才能看到的页面内容。以下将详细介绍如何使用Java HttpClient进行...

    httpclient4.3 设置代理

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

    commons-httpclient依赖包

    包括了httpclient的所有包,commons-httpclient3.0.jar,httpclient4.0.jar,commons-logging1.1.1.jar,commons-codec-1.3.jar等

    java使用HttpClient通过url下载文件到本地

    综上所述,通过Java的HttpClient库,可以在Eclipse环境中编写程序,实现从指定URL下载文件到本地的功能。通过理解HttpClient的工作原理和提供的API,开发者可以构建出稳定、高效的文件下载解决方案。

Global site tag (gtag.js) - Google Analytics