注:本代码实现包针对于Apache下的HttpComponents项目http://hc.apache.org/downloads.cgi
包命名规范为:org.apache.http.*;
示例代码:
package httpclient;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.impl.client.DefaultHttpClient;
public class HttpClientTest {
public static void main(String args[]) throws Exception {
DefaultHttpClient client = new DefaultHttpClient();
//设置代理开始。如果代理服务器需要验证的话,可以修改用户名和密码
//192.168.1.107为代理地址 808为代理端口 UsernamePasswordCredentials后的两个参数为代理的用户名密码
client.getCredentialsProvider().setCredentials(new AuthScope("192.168.1.107",808), new UsernamePasswordCredentials("", ""));
HttpHost proxy = new HttpHost("192.168.1.107", 808);
client.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
//设置代理结束
HttpGet get = new HttpGet("http://www.163.com/");
HttpResponse response = client.execute(get);
//打印出状态码
System.out.println(response.getStatusLine());
//获得返回的内容,循环遍历出
HttpEntity entity = response.getEntity();
String str = null;
if (entity != null) {
InputStream instream = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(instream));
while(( str = reader.readLine()) != null) {
System.out.println(str);
}
instream.close();
reader.close();
}
//遍历内容结束
}
}
分享到:
相关推荐
以下是一个简单的示例代码,展示了如何配置HttpClient4来通过匿名代理访问网页: ```java import org.apache.http.HttpHost; import org.apache.http.client.config.RequestConfig; import org.apache....
5. **使用代理**:在需要经过代理服务器访问互联网的环境中工作。 6. **进行认证**:对受保护的Web资源进行身份验证。 总的来说,Apache Commons HttpClient 3.1是Java开发者处理HTTP通信的强大工具,它提供了丰富...
7. **HTTP代理支持**:对于需要通过代理服务器访问互联网的应用,HttpClient提供了代理配置选项。 8. **重试策略**:HttpClient允许开发者定义重试策略,当网络不稳定时,可以自动重试请求,增加请求的成功率。 9....
5. **代理支持**:如果你的网络环境需要通过代理服务器访问互联网,HttpClient可以配置代理设置,包括代理主机、端口、认证等信息。 6. **HTTP/1.1协议支持**:HttpClient 4.2完全支持HTTP/1.1协议,包括持久连接、...
1. **代理问题**:在进行网络请求时,有时我们需要通过代理服务器来访问目标资源。HttpClient 4.3封装工具类支持配置HTTP代理或SOCKS代理,包括设置代理的主机名、端口号,以及代理认证等。这样,即使在需要代理的...
5. **HTTP代理支持**:对于需要通过HTTP或HTTPS代理访问的目标,`commons-httpclient`提供了代理配置功能,可以设置代理服务器的地址、端口以及认证信息。 6. **SSL/TLS支持**:对于HTTPS通信,`commons-httpclient...
这使得HttpClient能够安全地访问需要身份验证的资源。 另外,HttpClient还提供了对Cookie的管理。通过`CookiePolicy`和`CookieSpec`,我们可以控制Cookie的接收和发送策略,确保合规性。 在使用过程中,我们还需要...
Apache Commons-HTTPClient 是一个强大的Java库,专为简化HTTP客户端编程而设计。该组件主要用于在Java应用程序...通过理解并熟练运用HttpClient,开发者可以更高效地编写网络通信代码,提高应用程序的功能性和可靠性。
【标题】:“httpclient4.1访问https的配置方法” 【描述】:“本教程将指导你...同时,对于复杂的网络环境,可能还需要配置代理、重试策略等高级特性。HttpClient 4.1提供了丰富的功能,可以根据具体需求进行定制。
4. **代理服务器**:HttpClient 支持通过代理服务器进行网络访问,适应企业内网环境。 总结,Apache HttpClient 4.5.5 是一个强大且可靠的网络通信工具,它的易用性、灵活性和高性能使其成为 Java 开发者的首选。...
8. **代理设置**:对于需要通过代理服务器访问的网络资源,HttpClient可以配置代理设置,进行代理通信。 9. **Cookie管理**:HttpClient可以管理Cookie,处理会话保持和跨域问题。 在实际应用中,为了使用...
1. GET请求:通过HttpClient,我们可以轻松创建GET请求。首先,创建一个`HttpGet`对象,设置请求的URL,然后通过HttpClient的`execute()`方法发送请求并获取响应。例如: ```java HttpGet httpGet = new HttpGet(...
检查网络连接,确保能够访问其他Web服务,如果网络没有问题,那么问题可能在于服务器或HttpClient的配置。 2. **服务器配置**:服务器可能存在配置错误,例如服务器端口没有打开,服务器应用程序崩溃,或者服务器不...
### HttpClient 使用详解 #### 一、概述 `HttpClient` 是 Apache Jakarta Commons 提供的一个高效、功能丰富的 HTTP ...通过这些示例,你可以根据具体需求灵活地使用 `HttpClient` 来实现更复杂的网络请求处理。
《HttpClient:网络爬虫...通过熟练掌握HttpClient的使用,开发者可以构建出稳定、高效的网络爬虫,实现对互联网数据的高效抓取和处理。在实际项目中,应结合具体需求,灵活运用HttpClient的各种特性,以实现最佳效果。
此外,文档还讲解了HttpClient的代理配置(Proxy Configuration),这是一个常用功能,特别是当需要通过代理服务器来访问外部网络资源时。 HTTP状态管理(HTTP State Management)部分讨论了HTTP Cookie的处理,...
在Android应用程序开发中,网络通信是不可或缺的一部分,而Apache HttpClient库则是实现网络请求的常用工具之一。本篇文章将深入解析`httpclient-4.3.6.jar`包,它是Android异步框架中一个重要的组件,对于理解网络...
在Java编程中,访问网页内容是一项常见的任务,通常我们使用HttpClient类来实现这一功能。HttpClient是Apache ...通过深入理解其源码和实践,开发者可以在实际项目中更好地利用HttpClient实现高效、可靠的网络通信。