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

Apache HttpComponents Client 4.0快速入门/升级-2.POST方法访问网页(转)

阅读更多
Http POST方法得到www.g.cn的源码:

import java.io.IOException;   
import java.util.ArrayList;   
import java.util.List;   
import org.apache.commons.httpclient.NameValuePair;   
import org.apache.commons.httpclient.methods.PostMethod;   
import org.apache.http.HttpEntity;   
import org.apache.http.HttpResponse;   
import org.apache.http.ParseException;   
import org.apache.http.client.entity.UrlEncodedFormEntity;   
import org.apache.http.client.methods.HttpPost;   
import org.apache.http.impl.client.DefaultHttpClient;   
import org.apache.http.message.BasicNameValuePair;   
import org.apache.http.protocol.HTTP;   
import org.apache.http.util.EntityUtils;   
public class PostSample {   
    public static void main(String[] args) throws ParseException, IOException {   
        String url = "http://www.g.cn/";   
        System.out.println(url);   
        System.out.println("Visit google using Apache commons-httpclient 3.1:");   
        List<NameValuePair> data3 = new ArrayList<NameValuePair>();   
        data3.add(new NameValuePair("username", "testuser"));   
        data3.add(new NameValuePair("password", "testpassword"));   
        System.out.println(post3(url, data3));   
        System.out.println("Visit google using Apache HttpComponents Client 4.0:");   
        List<BasicNameValuePair> data4 = new ArrayList<BasicNameValuePair>();   
        data4.add(new BasicNameValuePair("username", "testuser"));   
        data4.add(new BasicNameValuePair("password", "testpassword"));   
        System.out.println(post4(url, data4));   
    }   
    /** 使用Apache commons-httpclient 3.1,POST方法访问网页 */  
    public static String post3(String url, List<NameValuePair> data) throws IOException {   
        org.apache.commons.httpclient.HttpClient httpClient = new org.apache.commons.httpclient.HttpClient();   
        PostMethod postMethod = new PostMethod(url);   
        postMethod.setRequestBody(data.toArray(new NameValuePair[data.size()]));   
        try {   
            System.out.println("<< Response: " + httpClient.executeMethod(postMethod));   
            return postMethod.getResponseBodyAsString();   
        } finally {   
            postMethod.releaseConnection();   
        }   
    }   
    /** 使用Apache HttpComponents Client 4.0,POST方法访问网页 */  
    private static String post4(String url, List<? extends org.apache.http.NameValuePair> data)   
            throws ParseException, IOException {   
        org.apache.http.client.HttpClient client = new DefaultHttpClient();   
        HttpPost httpost = new HttpPost(url);   
        httpost.setEntity(new UrlEncodedFormEntity(data, HTTP.UTF_8));   
        try {   
            HttpResponse response = client.execute(httpost);   
            HttpEntity entity = response.getEntity();   
            System.out.println("<< Response: " + response.getStatusLine());   
            if (entity != null) {   
                return EntityUtils.toString(entity);   
            }   
            return null;   
        } finally {   
            client.getConnectionManager().shutdown();   
        }   
    }   
}  


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/inkfish/archive/2009/11/02/4757754.aspx
分享到:
评论

相关推荐

    httpcomponents-client-4.0-bin-with-dependencies.zip

    在这个"**httpcomponents-client-4.0-bin-with-dependencies.zip**"压缩包中,包含了HttpClient 4.0版本以及其依赖项,使得开发者可以直接在项目中使用,无需单独管理依赖。 一、HttpClient简介 HttpClient是Apache...

    httpclient-4.5所需jar包 httpcomponents-client-4.5.12-bin.zip

    此压缩包`httpcomponents-client-4.5.12-bin.zip`包含了运行HTTPClient 4.5所需的多个JAR文件。 以下是这些JAR文件的功能和在HTTP通信中的作用: 1. **httpclient-4.5.12.jar**:这是主要的HTTPClient库,包含所有...

    org.apache.http相关jar包下载(httpcomponents-client-4.2.5-bin.tar)

    在标题提到的`httpcomponents-client-4.2.5-bin.tar`中,我们找到了Apache HttpClient的特定版本4.2.5的二进制分发包,它通常包含了一系列的JAR文件,用于支持网络爬虫和其他需要与HTTP服务器交互的应用程序。...

    httpcomponents-client-4.0-bin.tar.gz

    1. HttpClient:HttpClient是HTTPComponents的核心,它提供了一套完整的API来执行HTTP请求,包括GET、POST、PUT、DELETE等各种HTTP方法,以及支持HTTP/1.1和部分HTTP/2协议。 2. HttpCore:HttpCore是低级别的网络...

    httpcomponents-client-4.2-alpha1-bin.tar.gz

    《Apache HttpComponents Client 4.2 Alpha1:深入解析与应用》 Apache HttpComponents Client是Apache软件基金会的一个项目,主要用于构建高效、灵活且可扩展的HTTP客户端应用。这个项目的4.2 Alpha1版本,即...

    httpcomponents-client-4.5.6.rar

    标题中的"httpcomponents-client-4.5.6.rar"是一个压缩包文件,它是Apache HttpComponents项目的客户端组件的一个版本,具体是4.5.6版。HttpComponents是Java领域中用于处理HTTP协议的重要库,它提供了对HTTP协议的...

    httpcomponents-client-4.0-beta2-bin.zip

    在我们讨论的这个版本——"httpcomponents-client-4.0-beta2"中,我们将深入探讨它的重要特性、用法以及在实际开发中的应用。 HttpClient 4.0引入了许多改进,尤其是在性能和可配置性方面。Beta2版本虽未正式发布,...

    httpcomponents-core-4.0-bin.zip

    《Apache HttpComponents Core 4.0:构建网络通信的基础》 Apache HttpComponents Core 4.0 是一个重要的Java库,它提供了对HTTP协议的强大支持,是开发者构建网络应用程序的基石。这个版本的发布,标志着...

    org.apache.http httpcomponents-client-4.5.3-bin.zip

    这个库支持HTTP/1.1和部分HTTP/2协议,包括基本的HTTP方法如GET、POST、PUT、DELETE等,以及更复杂的特性如Cookie管理、重定向处理、连接池和SSL/TLS安全通信。 二、核心概念与组件 1. `CloseableHttpClient`:这...

    httpcomponents-client-4.1.2-osgi-bin.tar.gz

    《Apache HttpClient 4.1.2 OSGi版本详解》 Apache HttpClient是一个广泛使用的Java库,专门用于执行HTTP请求。这个“httpcomponents-client-4.1.2-osgi-bin.tar.gz”文件是HttpClient的一个特定版本——4.1.2,...

    httpcomponents-client-4.5.5-bin.zip

    标题中的"httpcomponents-client-4.5.5-bin.zip"是一个HTTP客户端库的压缩包,源自Apache软件基金会的HTTP Components项目。这个版本(4.5.5)是专门为Java开发人员设计的,用于处理HTTP协议的客户端操作。它包含了...

    httpcomponents-client-4.5.5 jar包

    HTTPComponents Client是Apache HttpClient的升级版,它主要由两个部分组成:Core模块和HttpClient模块。Core模块提供了基础的HTTP协议处理功能,而HttpClient模块则构建在其上,提供了更高级的HTTP客户端服务,如...

    httpcomponents-client-4.2.5-bin

    - `README.txt`:简要介绍了库的用途和使用方法,是快速入门的指南。 四、实例应用 下面是一个简单的使用HTTPComponents Client发送GET请求的例子: ```java CloseableHttpClient httpClient = HttpClients....

    httpcomponents-client-5.0.1-bin.zip

    Apache HttpComponents Client 5.0.1是Apache软件基金会的开源项目,它继承了早期的HttpClient库,提供了一套完整的HTTP客户端API,支持HTTP/1.1和部分HTTP/2协议。这个库的核心优点在于其灵活性和可配置性,允许...

    httpcomponents-client-4.5.9-bin.zip,httpcomponents-core-4.4.11-bin.zip

    标题中的“httpcomponents-client-4.5.9-bin.zip”和“httpcomponents-core-4.4.11-bin.zip”指的是Apache HttpComponents项目的两个不同版本的二进制发行包。Apache HttpComponents是一个开源项目,提供了Java语言...

    httpcomponents-client-5.0-bin.zip

    《Apache HttpClient 5.0详解:打造高效稳定的网络通信》 Apache HttpClient 是一个广泛使用的 Java 库,专门用于实现客户端的 HTTP 协议通信。在最新版本 5.0 中,它提供了许多改进和新特性,以提升网络请求的效率...

    httpcomponents-client-4.1.2-src.zip

    《Apache HttpComponents Client 4.1.2 源码解析》 Apache HttpComponents Client是Apache软件基金会的一个项目,它是HTTP客户端通信的核心组件,广泛应用于Java开发者中,为他们提供了强大的HTTP请求处理能力。这...

    httpcomponents-client-4.1.3-bin.zip

    "httpcomponents-client-4.1.3-bin.zip"是该库的一个特定版本——4.1.3的二进制发行版,包含了所有必要的类库文件,使得开发者可以直接在项目中使用。 Apache HttpClient 4.1.3主要包含以下几个核心模块: 1. **...

    httpcomponents-client-4.2-alpha1-src.tar.gz

    《Apache HttpClient 4.2 Alpha1 源代码解析与应用》 Apache HttpClient 是一个流行的开源项目,由Apache软件基金会维护,它为Java开发者提供了一套强大的HTTP客户端接口。本篇将深入探讨"HTTPComponents-client-...

    commons-codec.jar;commons-logging-1.1.jar;commons-httpclient-3.1.jar

    然而,需要注意的是,`commons-httpclient-3.1.jar`已经是较旧的版本,现代项目可能倾向于使用更新的Apache HttpClient库(如HttpClient 4.x或HttpComponents Client)或其它现代HTTP客户端,如OkHttp。

Global site tag (gtag.js) - Google Analytics