private void setProxyInfo(DefaultHttpClient httpClient) {
CredentialsProvider credsProvider = new BasicCredentialsProvider();
String proxyHost="192.168.1.1";
int proxyPort=3128;
String userName="username";
String password="password";
credsProvider.setCredentials(
new AuthScope(proxyHost,proxyPort),
new UsernamePasswordCredentials(userName,password));
httpClient.setCredentialsProvider(credsProvider);
HttpHost proxy = new HttpHost(proxyHost, proxyPort, "http");
httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY,proxy);
}
注:如果是不需要认证的代理设置可把CredentialsProvider 的设置部分去掉
分享到:
相关推荐
在HttpClient 3.x中,可以设置代理认证、状态管理和连接管理等操作,这些操作在4.x版本中有新的实现方式。程序员需要掌握如何使用`Credentials`和`AuthScope`来处理认证,以及如何配置代理服务器。 此外,迁移指南...
本文将基于`httpclient4`源码,深入解析其核心概念和实现原理。 1. **连接管理**: HTTPClient4中的连接管理是通过`HttpClientConnectionManager`接口实现的,主要负责创建、复用和关闭TCP连接。`...
### Commons HTTPClient4.X 组件应用详解 #### 一、引言 随着互联网技术的发展,越来越多的应用场景需要直接通过HTTP协议访问Web服务器上的资源。传统的做法是使用浏览器或者基于JDK提供的`java.net`包中的类如`...
它的核心组件包括HttpClient实例、HttpUriRequest对象和HttpResponse对象,可以实现异步和同步请求,支持HTTPS、Cookie管理、代理设置等功能。 2. **心跳检测**:心跳检测是一种健康检查机制,用于验证服务的可用性...
HttpClient 4.3封装工具类支持配置HTTP代理或SOCKS代理,包括设置代理的主机名、端口号,以及代理认证等。这样,即使在需要代理的网络环境中,也能正常发起HTTP请求。 2. **多线程问题**:在处理大量并发请求时,...
5. **HTTP代理支持**:对于需要通过HTTP或HTTPS代理访问的目标,`commons-httpclient`提供了代理配置功能,可以设置代理服务器的地址、端口以及认证信息。 6. **SSL/TLS支持**:对于HTTPS通信,`commons-httpclient...
《Apache HttpClient 3.1详解及其在Java中的应用》 Apache HttpClient是一个强大的HTTP客户端实现库...然而,由于HttpClient 3.x已被4.x系列取代,虽然3.1仍可使用,但推荐更新到更现代的版本以获取更多的特性和改进。
它支持HTTP/1.1和部分HTTP/2规范,可以处理复杂的HTTP方法、认证、缓存、代理以及重定向等特性。 二、主要组件 1. `commons-httpclient-3.1.jar`: 这是HttpClient的核心库,包含了所有执行HTTP请求和处理响应的类...
- 设置请求上下文:可能包含认证信息、cookies、代理设置等。 - 执行请求:`CloseableHttpClient.execute(HttpUriRequest)`发送请求并获取`HttpResponse`。 - 处理响应:检查状态码、读取响应头和实体内容,可能...
**2.8 HttpClient 代理配置:** HttpClient支持通过配置代理服务器来转发请求,这对于处于防火墙后的客户端特别有用。 #### 三、HTTP状态管理 **3.1 HTTP Cookies:** Cookie是服务器存储在客户端的小型文本文件,...
- 如果网络环境需要使用代理服务器,则需要配置HttpClient以使用正确的代理设置。 #### 三、HTTP状态管理 **3.1 HTTP Cookies** - Cookies用于保存用户的登录状态或其他信息。 - **3.2 Cookies规范**: 规定了...
- HttpClient 4.5引入了异步API,基于Future和Callback模型,可以并行处理多个请求。 10. **错误处理**: - 错误代码和异常处理:HttpClient会抛出IOException和其他特定的异常,需要捕获并适当地处理。 学习...
从架构设计上,HttpClient基于经典(阻塞)I/O,这意味着它并不适用于非阻塞场景。此外,它不是浏览器,因此它不会执行嵌入在HTML页面中的JavaScript代码,也不会缓存内容或者处理重定向URI。 最后,本教程译者南磊...
HttpClient简化了HTTP通信的复杂性,使得开发者可以更容易地创建复杂的HTTP应用,例如进行网页抓取、Web服务调用或者实现自定义的代理设置。 在实际应用中,通常会同时使用HttpCore和HttpClient。HttpCore作为底层...
《HttpClient详解:基于commons-httpclient-3.1.jar的HTTP通信技术》 在Java开发中,与远程服务器进行HTTP通信是常见的需求。Apache HttpClient库,尤其是`commons-httpclient-3.1.jar`版本,提供了强大的功能,...
.proxy(ProxySelector.getDefault()) // 设置代理 .followRedirects(HttpClient.Redirect.NEVER) // 是否自动处理重定向 .authenticator(new Authenticator() { // 设置认证器 @Override protected ...
它是基于经典(阻塞)I/O进行工作的,提供了一个内容无关的运输实现库。尽管它能够执行HTTP的基本操作,但它并不会执行浏览器中嵌入的JavaScript代码,也不会缓存内容或猜测内容类型。 2. HttpClient不能做的事情 ...
在上述代码中,我们首先创建了一个HttpClient实例,然后设置了认证信息,以便在访问受保护的Web服务时进行身份验证。接着,我们创建了一个HttpPost对象,并设置了SOAP请求体。请求体是SOAP消息的XML表示,其中包含了...
其核心组件httpclient-4.3.1.jar提供了主要的HTTP客户端接口和实现,包含了请求执行、URL处理、认证和代理设置等功能。 httpclient-cache-4.3.1.jar是HttpClient的缓存模块,实现了HTTP/1.1缓存规范,可以有效地...