HttpClient使用的Demo

来源:互联网 发布:地理绘图软件 编辑:程序博客网 时间:2024/05/16 04:55
import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.ResponseHandler;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.io.IOException;public class HttpRequestUtil{    private static final Logger logger = LoggerFactory.getLogger(HttpRequestUtil.class);    public static String doPost(String url, String param)    {        String responseBody = null;        try {            CloseableHttpClient httpclient = HttpClients.createDefault();            HttpPost httpPost = new HttpPost(url);            httpPost.addHeader("Content-Type", "application/json;charset=UTF-8");            StringEntity stringEntity = new StringEntity(param, "UTF-8");            stringEntity.setContentEncoding("UTF-8");            httpPost.setEntity(stringEntity);            ResponseHandler responseHandler = new ResponseHandler()            {                public String handleResponse(HttpResponse response) throws ClientProtocolException, IOException                {                    int status = response.getStatusLine().getStatusCode();                    if ((status >= 200) && (status < 300))                    {                        HttpEntity entity = response.getEntity();                        return entity != null ? EntityUtils.toString(entity) : null;                    }                    throw new ClientProtocolException("Unexpected response status: " + status);                }            };            responseBody = (String)httpclient.execute(httpPost, responseHandler);        } catch (Exception e) {            logger.error("msg:{}", e);        }        return responseBody;    }}

原创粉丝点击