package org.springboot.sample.util; import java.util.Map; import org.apache.commons.collections.MapUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.http.HttpEntity; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; /** * * 类功能说明:httpclient工具类,基于httpclient 4.x */ public class HttpClientUtils { private static final Logger LOGGER = LoggerFactory.getLogger(HttpClientUtils.class); /** * post请求 * @param url * @param formParams * @return */ public static String doPost(String url, Map<String, String> formParams) { if (MapUtils.isEmpty(formParams)) { return doPost(url); } try { MultiValueMap<String, String> requestEntity = new LinkedMultiValueMap<>(); formParams.keySet().stream().forEach(key -> requestEntity.add(key, MapUtils.getString(formParams, key, ""))); return RestClient.getClient().postForObject(url, requestEntity, String.class); } catch (Exception e) { LOGGER.error("POST请求出错:{}", url, e); } return null; } /** * post请求 * @param url * @return */ public static String doPost(String url) { try { return RestClient.getClient().postForObject(url, HttpEntity.EMPTY, String.class); } catch (Exception e) { LOGGER.error("POST请求出错:{}", url, e); } return null; } /** * get请求 * @param url * @return */ public static String doGet(String url) { try { return RestClient.getClient().getForObject(url, String.class); } catch (Exception e) { LOGGER.error("GET请求出错:{}", url, e); } return null; } }