原文链接:HttpClient通过HttpPost传递参数
发起客户端请求,直接请求路径url后带大量参数报错:Connection reset by peer: socket write error
解决方法:把参数放到请求体中。
HttpClient新版本(新老版本没有做明确界定,Sorry!)
- package http;
- import java.util.ArrayList;
- import java.util.List;
- import org.apache.http.NameValuePair;
- import org.apache.http.client.HttpClient;
- 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;
- public class HttpTests {
- /**
- * @param args
- * @throws Exception
- */
- public static void main(String[] args) throws Exception {
- HttpClient httpclient = new DefaultHttpClient();
- HttpPost httpPost = new HttpPost("******/abc");
- List<NameValuePair> nvps = new ArrayList<NameValuePair>();
- nvps.add(new BasicNameValuePair("username", "vip"));
- nvps.add(new BasicNameValuePair("password", "secret"));
- httpPost.setEntity(new UrlEncodedFormEntity(nvps));
- httpclient.execute(httpPost);
- httpclient.getConnectionManager().shutdown();
- }
- }
HttpClient 老版本:
- package http;
- import org.apache.commons.httpclient.HttpClient;
- import org.apache.commons.httpclient.NameValuePair;
- import org.apache.commons.httpclient.methods.PostMethod;
- public class HttpTests {
- /**
- * @param args
- * @throws Exception
- */
- public static void main(String[] args) throws Exception {
- HttpClient httpclient = new HttpClient();
- PostMethod httpPost =new PostMethod("******/abc");
- NameValuePair[] param = { new NameValuePair("username", "vip")};
- httpPost.setRequestBody(param);
- httpclient.executeMethod(httpPost);
- }
- }
相关推荐
* Connection reset by peer:Connection reset by peer 是一种特殊的 SocketException,它发生在客户端和服务器端之间的连接断开后,导致连接的一端继续发送数据,引发该异常。 实践经验 通过实践经验,我们可以...
在本示例中,我们将关注“httpclient使用post方法上传多个图片和其他参数的demo源码”,这是一个涉及到文件上传和参数传递的重要场景。 在Web开发中,POST方法常用于向服务器提交数据,比如表单数据或文件。...
### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...
介绍如何通过HttpClient模块来创建Http连接,并分别以Http GET与Http POST方法来传递参数,连接之后取回Web Server的返回网页结果。重点是如何使用HttpClient的模块来完成Http的请求与应答。 分享参考自Android SDK...
它允许开发者模拟GET和POST等HTTP请求,并可以方便地发送JSON等数据作为请求参数。在本文中,我们将深入探讨如何使用HttpClient进行HTTP请求操作,以及如何处理JSON数据。 首先,我们需要引入HttpClient的相关依赖...
5. 配置和使用:在Java项目中,我们首先需要将这些jar包添加到类路径中,然后可以通过创建HttpClient实例,创建HttpPost或HttpGet对象,设置请求参数,最后通过HttpClient执行请求并处理响应。 6. 示例代码: ```...
HttpClient库中的类和方法通常不需要使用注解,因为它的配置主要通过对象构造和方法调用来完成。然而,如果你在使用日志框架(如Log4j),可能需要在项目中添加相应的日志配置,如`@Log4j`,以便在代码中记录...
本示例探讨的是如何使用HTTPClient库在客户端发送XML报文到服务器端,且报文通过POST方法传递,并可能涉及加密处理,确保数据的安全性。 首先,HTTPClient是Apache提供的一款强大的Java HTTP客户端API,它允许...
在Java开发中,HTTPClient库是一个非常常用的工具,用于执行HTTP请求,包括POST请求。本篇文章将深入探讨如何使用HTTPClient发送POST请求,以及相关的项目结构和实现细节。 首先,"post-demo"项目定义了我们需要...
httpclient get/post请求工具类(map参数封装),方便调用
public static String post(String url, String params){ log.info("post url:" + url + " params:" + params); String responseStr = ""; try(CloseableHttpClient httpClient = HttpClients.createDefault()) {...
这个实例主要涉及了如何使用HttpClient发送POST请求,同时处理普通参数和JSON格式参数,以及解析响应内容。下面我们将深入探讨这些知识点。 一、HttpClient基础 HttpClient库提供了一套完整的API,允许开发者构建...
本文主要讨论如何使用HttpClient发送JSON格式和普通参数类型的POST请求。首先,我们来看一下所需的Maven依赖。 ```xml <groupId>commons-httpclient <artifactId>commons-httpclient <version>3.1 <groupId>...
通过`java_httpclient_post`这个文件名,我们可以推测其中可能包含了完整的示例代码或者相关教程,你可以参考这个文件来实践和学习HttpClient的POST请求使用。记住,实践是检验理论的最好方式,尝试运行这个例子,看...
HttpClient是Apache基金会开发的一个HTTP客户端库,广泛应用于Java编程中,用于执行HTTP请求,包括GET、POST以及文件下载等操作。本篇文章将深入探讨如何利用HttpClient实现这些功能,并提供实战代码示例。 首先,...
在这个场景中,我们关注的是如何使用HttpClient来发送POST请求并传输JSON数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于API接口的数据传递。 首先,我们需要引入Apache HttpClient...
你可以通过阅读和分析这两个文件,了解在实际项目中如何具体实现MFC的HttpClient GET和POST请求。 总结来说,MFC的HttpClient使得开发者能够方便地与HTTP服务器交互,执行GET和POST请求。通过理解HTTP协议的基本...
1. **发起HTTP请求**:你可以通过HttpClient创建HttpGet、HttpPost等对象,设置URL、请求头和请求体,然后通过execute()方法发送请求。 2. **处理响应**:HttpClient返回的HttpResponse对象包含了服务器的响应状态码...
在Java编程中,HTTPClient库是一个非常常用的工具,用于发送HTTP请求,包括POST方式的请求。本篇文章将详细讲解如何使用HTTPClient库以POST方式发送JSON格式的数据,并介绍相关依赖包。 首先,为了使用HTTPClient库...
本文将深入探讨基于Socket实现的HttpClient,以及它如何处理GET和POST协议。 首先,Socket是TCP/IP协议族中的一个概念,它提供了一种进程间通信(IPC)机制,允许两台计算机上的应用程序通过网络进行数据交换。在C...