import java.io.BufferedReader;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
/**
* HttpClient 4 使用POST方式提交普通表单数据的例子.
*
* @author JAVA世纪网(java2000.net, laozizhu.com)
*/
public class HttpClientPost {
public static void main(String[] args) throws Exception {
DefaultHttpClient httpclient = new DefaultHttpClient();
// 代理的设置
HttpHost proxy = new HttpHost("10.60.8.20", 8080);
httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
// 目标地址
HttpPost httppost = new HttpPost("http://www.java2000.net/login.jsp");
System.out.println("请求: " + httppost.getRequestLine());
// 构造最简单的字符串数据
StringEntity reqEntity = new StringEntity("username=test&password=test");
// 设置类型
reqEntity.setContentType("application/x-www-form-urlencoded");
// 设置请求的数据
httppost.setEntity(reqEntity);
// 执行
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
System.out.println("----------------------------------------");
System.out.println(response.getStatusLine());
if (entity != null) {
System.out.println("Response content length: " + entity.getContentLength());
}
// 显示结果
BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8"));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
if (entity != null) {
entity.consumeContent();
}
}
}
分享到:
相关推荐
二、C#实现POST表单提交的步骤 1. 创建HTTP客户端:使用HttpClient类创建一个HTTP客户端实例,这是C#中与HTTP服务器交互的基础。 2. 设置请求头:设置Content-Type为application/x-www-form-urlencoded,表示表单...
### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...
首先,我们需要理解POST请求的基本概念,它通常用于向服务器发送数据,比如提交表单或者上传文件。 在`httpclient.jar`包中,主要涉及`org.apache.http.client`和`org.apache.http.entity`这两个关键包,它们提供了...
在使用HttpClient模拟表单POST提交时,首先需要创建一个HttpClient实例,这通常是通过HttpClientBuilder或者HttpClientFactory来完成的。然后,我们创建一个HttpGet或HttpPost对象,设置其目标URL。对于POST请求,...
总结来说,Java HttpClient是一个强大的工具,能够帮助我们方便地与Web服务器进行交互,动态提交数据。通过理解和掌握其用法,开发者可以构建各种复杂的网络应用程序,进行数据抓取、自动化测试或集成服务。
本文将深入探讨如何使用HttpClient来提交数据,以及这两种方法的基本原理和实际应用。 1. **HttpClient简介** Apache HttpClient是一个开源项目,它提供了一个灵活且功能丰富的API,用于执行HTTP请求和处理响应。...
POST请求常用于向服务器提交数据。下面是一个POST请求的例子,包括设置请求头和请求体: ```java import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import ...
2. **POST方法**:POST方法用于向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。POST方法可以传输大量数据,数据在请求...
HttpClient支持通过表单或multipart/form-data格式上传文件。以下是一个使用HttpPost和FileEntity的例子: ```java File file = new File("/path/to/file"); HttpEntity entity = MultipartEntityBuilder.create() ...
使用HttpClient来模拟浏览器GET_POST HttpClient是一个Apache开源组织中的项目,隶属于Jakarta的commons项目,旨在简化HTTP客户端与服务器进行各种通讯编程。通过使用HttpClient,可以轻松地解决以前很头疼的事情,...
HttpClient还可以处理更复杂的情况,例如设置代理、使用POST方法提交表单数据、处理HTTPS连接等。对于POST方法,可以使用PostMethod类,并通过`setParameters`方法添加参数: ```java PostMethod postMethod = new ...
POST请求常用于向服务器提交数据。以下是一个使用HttpClient发送POST请求的Java代码示例: ```java import org.apache.http.HttpEntity; import org.apache.http.NameValuePair; import org.apache....
4. **Android网络编程**:在Android平台上,我们可以使用HttpURLConnection或HttpClient库进行POST请求,但现代的Android开发更推荐使用OkHttp库,它提供了更加便捷和高效的网络请求功能。首先,创建一个...
HttpClient还支持POST请求,可以用来发送表单数据: ```java HttpPost httpPost = new HttpPost("http://example.com"); List<NameValuePair> nameValuePairs = new ArrayList(2); nameValuePairs.add(new ...
在Web开发中,POST提交是客户端向服务器发送数据的一种常见方法,常用于提交表单数据或进行API交互。本工具即以C#为基础,实现了一个简单的POST数据提交的功能。 1. **POST提交原理** - POST请求是HTTP协议中的一...
你可以使用它来发送数据(如POST请求中的表单数据)或接收响应体。 4. **HttpResponse**:表示HTTP响应,包含状态行、头部和实体。 5. **HttpClientContext**:提供了上下文信息,可以用来存储请求或连接级别的...
它提供了MultipartEntityBuilder类,可以方便地构造包含多个部分的POST请求,每部分可以有不同的Content-Type,这在上传文件或者表单数据时非常有用。 关于"post请求"和"传输文件"的标签,HttpClient提供了一套完整...
如果需要提交表单数据,如登录操作,可以使用HttpPost: ```java HttpPost httpPost = new HttpPost("http://www.kaixin001.com/login.php"); List<NameValuePair> params = new ArrayList(); params.add(new ...
在HTTP中,POST请求通常用于向服务器提交数据,这些数据可以是表单数据、文件或其他复杂的数据结构。HttpClient提供了一个`HttpPost`类,用于创建POST请求。下面是一个简单的示例: ```java HttpPost httpPost = ...
在压缩包中的例子可以帮助你了解如何在实际项目中使用HTTPClient,例如发送GET请求获取网页内容,发送POST请求提交表单数据,或者处理复杂的认证和重定向情况。 总的来说,Apache HttpClient是一个强大的工具,为...