1 引入依赖
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-pool2 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.6.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.8</version>
</dependency>
2 doPost 主方法
/**
* post请求
* @param url url
* @param jsonString json请求体,就是post请求的body
* @return json
*/
public static String doPost(String url,String jsonString) {
CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse response = null;
String resultString = "";
try {
HttpPost httpPost = new HttpPost(url);
StringEntity entity = new StringEntity(jsonString, ContentType.APPLICATION_JSON);
httpPost.setEntity(entity);
response = httpClient.execute(httpPost);
resultString = EntityUtils.toString(response.getEntity(), "utf-8");
}catch (Exception e){
e.printStackTrace();
}finally {
releaseHttp(httpClient,response);
}
return resultString;
}
3 释放资源
/**
* 释放资源
* @param httpClient client
* @param response res
*/
private static void releaseHttp(CloseableHttpClient httpClient,CloseableHttpResponse response){
try {
if(httpClient!=null){
httpClient.close();
}
if(response !=null){
response.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
4 调用测试
public static void main(String[] args) {
doPost("https://qiyeweixin.gerenweixin.qq.com/cgi-bin/webhook/send?key=9fhg6d6e-76fd-4079-8351-58e9d319e924",
"{\"msgtype\": \"text\",\"text\": {\"content\": \"机器人:结节兽\\n佩奇:猪猪侠\",}}");
}