httpClientUtil的put请求

Posted wangquanyi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了httpClientUtil的put请求相关的知识,希望对你有一定的参考价值。

httpClientUtil的put请求,含请求头和请求体:

代码:

 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.HttpPut;
 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 HttpRequestPutServiceImpl 
17     CloseableHttpClient httpClient = HttpClients.createDefault();
18 
19     public String doPutHttpRequest(String url, Map<String, String> headerMap,String requestBody) 
20         String entityStr = null;
21         CloseableHttpResponse response = null;
22         try 
23             HttpPut post = new HttpPut(url);
24             //添加头部信息
25             for (Map.Entry<String, String> header : headerMap.entrySet()) 
26                 post.addHeader(header.getKey(), header.getValue());
27             
28             HttpEntity entity = new StringEntity(requestBody,"Utf-8");
29             System.out.println("请求体是:"+requestBody);
30             post.setEntity(entity);
31             response = httpClient.execute(post);
32             // 获得响应的实体对象
33             HttpEntity httpEntity = response.getEntity();
34             // 使用Apache提供的工具类进行转换成字符串
35             entityStr = EntityUtils.toString(httpEntity, "UTF-8");
36             System.out.println("PUT请求路径:"+post);
37             System.out.println("PUT请求结果:"+entityStr);
38          catch (ClientProtocolException e) 
39             System.err.println("Http协议出现问题");
40             e.printStackTrace();
41          catch (ParseException e) 
42             System.err.println("解析错误");
43             e.printStackTrace();
44          catch (IOException e) 
45             System.err.println("IO异常");
46             e.printStackTrace();
47         
48         return entityStr;
49     
50 

如有不足之处欢迎大家指导。

以上是关于httpClientUtil的put请求的主要内容,如果未能解决你的问题,请参考以下文章

httpClientUtil的post请求

yaws 因 httpc 崩溃:请求 docker 容器提供的 URL

HttpClientUtils

Golang的一个简单实用的http客户端库httpc

HTTPC1-Web及网络基础

轻松把玩HttpClient之封装HttpClient工具类,携带Cookie的请求