zoukankan      html  css  js  c++  java
  • 使用HttpClient访问url的工具类

    maven依赖jar包配置:

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.3.3</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.3.6</version>
        </dependency>

    Java代码如下:

    import java.io.IOException;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.methods.CloseableHttpResponse;
    import org.apache.http.client.methods.HttpGet;
    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;
    
    public class HttpClientUtil {
    
        /**
         * httpPost
         */
        public static String httpPost(String url, String jsonParam) throws ClientProtocolException, IOException {
            CloseableHttpClient httpclient = HttpClients.createDefault();
    
            HttpPost httpPost = new HttpPost(url);
            if (true) {
                // 使参数体为空时,也可以进行post请求
                jsonParam = (null == jsonParam || jsonParam.isEmpty()) ? "" : jsonParam;
    
                // post请求的一些设置
                StringEntity entity = new StringEntity(jsonParam, "utf-8");
                entity.setContentEncoding("UTF-8");
                entity.setContentType("application/json");
                httpPost.setEntity(entity);
            }
            CloseableHttpResponse response = httpclient.execute(httpPost);
    
            try {
                HttpEntity entity = response.getEntity();
                // EntityUtils.consume(entity);
                String str = EntityUtils.toString(entity);
                EntityUtils.consume(entity); // 此句关闭了流
                return str;
            } finally {
                response.close();
            }
        }
    
        /**
         * httpGet
         */
        public static String httpGet(String url) throws ClientProtocolException, IOException {
            CloseableHttpClient httpclient = HttpClients.createDefault();
            HttpGet httpGet = new HttpGet(url);
            CloseableHttpResponse response = httpclient.execute(httpGet);
            try {
                HttpEntity entity = response.getEntity();
                String strResult = EntityUtils.toString(entity);
                return strResult;
            } finally {
                response.close();
            }
        }
    
    }
  • 相关阅读:
    POJ 1251 Jungle Roads
    1111 Online Map (30 分)
    1122 Hamiltonian Cycle (25 分)
    POJ 2560 Freckles
    1087 All Roads Lead to Rome (30 分)
    1072 Gas Station (30 分)
    1018 Public Bike Management (30 分)
    1030 Travel Plan (30 分)
    22. bootstrap组件#巨幕和旋转图标
    3. Spring配置文件
  • 原文地址:https://www.cnblogs.com/zj0208/p/6113897.html
Copyright © 2011-2022 走看看