import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
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.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
//使用httpclient提交post请求 x-www-form-urlencoded
public class PostTest{
public static void main(String[] args) throws Exception {
String url="http://localhost:8080/boot/user/";
Map<String,Object> params=new HashMap<String,Object>();
params.put("a", "1");
String result=post(url,params);
System.out.println(result);
}
public static String post(String url, Map<String,Object> params){
HttpClient client = HttpClients.createDefault();
HttpPost hp=new HttpPost(url);
String s="";
try {
List<NameValuePair> names=new ArrayList<NameValuePair>();
Set<String> keys=params.keySet();
for(String k:keys) {
names.add(new BasicNameValuePair(k, params.get(k).toString()));
}
hp.setEntity(new UrlEncodedFormEntity(names,"UTF-8"));
hp.setHeader("Content-type", "application/x-www-form-urlencoded");
HttpResponse response=client.execute(hp);
int status=response.getStatusLine().getStatusCode();
if(status==200) {
HttpEntity entity=response.getEntity();
s=EntityUtils.toString(entity);
}
}catch(Exception e) {
e.printStackTrace();
}
return s;
}
}
分享到:
相关推荐
POST请求常用于向服务器提交数据。下面是一个POST请求的例子,包括设置请求头和请求体: ```java import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import ...
在这个主题中,我们将专注于如何使用HttpClient发送POST请求并传输JSON数据。在实际的Web服务开发和API调用中,这是一个非常常见的需求。 首先,理解POST请求:与GET请求不同,POST请求通常用于向服务器发送数据,...
3. **设置请求体**:如果POST请求有数据需要提交,可以使用`HttpEntityEnclosingRequestBase.setEntity()`方法设置请求实体,例如,使用`StringEntity`或`UrlEncodedFormEntity`来封装数据。 4. **执行请求**:通过...
本文将深入探讨如何使用HttpClient进行GET和POST请求,并提供相关的代码示例。 首先,GET请求是最常见的HTTP请求类型,通常用于获取资源。在HttpClient中,发送GET请求可以通过`HttpGet`类实现。以下是一个简单的...
以下是一个使用HttpClient发送POST请求的Java代码示例: ```java import org.apache.http.HttpEntity; import org.apache.http.NameValuePair; import org.apache.http.client.entity.UrlEncodedFormEntity; import...
"httpclient post json数据"这个主题就是关于如何使用C#的HttpClient类来向Web API发送POST请求,并且以JSON格式传输数据。下面将详细解释这一过程。 首先,理解JSON(JavaScript Object Notation)是一种轻量级的...
通过`java_httpclient_post`这个文件名,我们可以推测其中可能包含了完整的示例代码或者相关教程,你可以参考这个文件来实践和学习HttpClient的POST请求使用。记住,实践是检验理论的最好方式,尝试运行这个例子,看...
2. **构建HttpPost请求**:对于表单提交,通常使用`HttpPost`对象。你需要指定表单提交的URL。 ```java HttpPost httpPost = new HttpPost("http://example.com/form"); ``` 3. **设置表单数据**:使用`...
7. **执行请求并处理响应**:最后,使用HttpClient发送POST请求,并处理响应: ```java CloseableHttpResponse response = httpClient.execute(httpPost); try { StatusLine statusLine = response....
HttpClient Post提交多文件及多个普通参数,已经封装成工具类。 需传入 要请求的url 普通参数map 例 map.put("param1","张三"); 需要传入的文件流map 其中key为文件名 服务端接收无乱码。
POST请求常用于提交数据到服务器。创建POST请求: ```java HttpPost httpPost = new HttpPost("http://example.com"); List<NameValuePair> nameValuePairs = new ArrayList(); nameValuePairs.add(new ...
使用HttpClient进行POST请求的步骤类似,但需要额外构造请求实体: 1. **创建HttpPost对象**:`new HttpPost("http://example.com")`,设置目标URL。 2. **创建请求实体**:可以使用`StringEntity`、`...
本文档主要介绍了如何在JSP中使用HttpClient发起POST请求,包括POST方法的基本概念、使用步骤以及具体实例。这对于理解如何通过HttpClient在JSP中发送POST请求非常有帮助。 #### 二、POST方法的概念 POST方法是一种...
GET请求用于获取服务器上的资源,而POST请求则常用于向服务器提交数据,比如表单数据或上传文件。 1. GET请求:HttpClientUtil中的GET方法通常会创建一个HttpGet对象,设置请求的URL,并通过HttpClient的execute...
使用`HttpClient`发送POST请求时,先创建一个`MultipartFormDataContent`或`StringContent`对象,将要发送的数据添加到其中,然后调用`PostAsync`方法。传入URL和创建的内容对象,同样返回一个`Task...
以下是一个简单的`upload.java`文件示例,演示了如何使用HttpClient进行POST请求并上传文件及参数: ```java import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; ...