码迷,mamicode.com
首页 > Web开发 > 详细

httpClientUtil的post请求

时间:2019-08-09 19:22:22      阅读:327      评论:0      收藏:0      [点我收藏+]

标签:bsp   sys   stp   create   addheader   set   解析   ace   tst   

post请求的写法,带请求头和请求体:

代码:

 1 import org.apache.http.HttpEntity;
 2 import org.apache.http.ParseException;
 3 import org.apache.http.client.ClientProtocolException;
 4 import org.apache.http.client.methods.CloseableHttpResponse;
 5 import org.apache.http.client.methods.HttpPost;
 6 import org.apache.http.entity.StringEntity;
 7 import org.apache.http.impl.client.CloseableHttpClient;
 8 import org.apache.http.impl.client.HttpClients;
 9 import org.apache.http.util.EntityUtils;
10 import org.springframework.stereotype.Component;
11 
12 import java.io.IOException;
13 import java.util.Map;
14 
15 @Component
16 public class HttpRequestPostServiceImpl implements HttpRequestPostService {
17     CloseableHttpClient httpClient = HttpClients.createDefault();
18 
19     @Override
20     public String doPostHttpRequest(String url, Map<String, String> headerMap, String requestBody) {
21         String entityStr = null;
22         CloseableHttpResponse response = null;
23         try {
24             HttpPost post = new HttpPost(url);
25             //添加头部信息
26             for (Map.Entry<String, String> header : headerMap.entrySet()) {
27                 post.addHeader(header.getKey(), header.getValue());
28             }
29             HttpEntity entity = new StringEntity(requestBody, "Utf-8");
30             System.out.println("请求体是:" + requestBody);
31             post.setEntity(entity);
32             response = httpClient.execute(post);
33             // 获得响应的实体对象
34             HttpEntity httpEntity = response.getEntity();
35             // 使用Apache提供的工具类进行转换成字符串
36             entityStr = EntityUtils.toString(httpEntity, "UTF-8");
37             System.out.println("POST请求路径:" + post);
38             System.out.println("POST请求结果:" + entityStr);
39         } catch (ClientProtocolException e) {
40             System.err.println("Http协议出现问题");
41             e.printStackTrace();
42         } catch (ParseException e) {
43             System.err.println("解析错误");
44             e.printStackTrace();
45         } catch (IOException e) {
46             System.err.println("IO异常");
47             e.printStackTrace();
48         }
49         return entityStr;
50     }
51 }

 

httpClientUtil的post请求

标签:bsp   sys   stp   create   addheader   set   解析   ace   tst   

原文地址:https://www.cnblogs.com/wangquanyi/p/11328847.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!