• HttpClient工具类


    doPost

        public static String doPostJson(String reqUrl, String reqJson, List<Header> headers) {
            String retJson = "";
            HttpClient httpClient = null;
            PostMethod postMethod = null;
            try {
                Charset defaultCharset = StandardCharsets.UTF_8;
                postMethod = new PostMethod();
                postMethod.setURI(new URI(reqUrl, true, defaultCharset.toString()));
                RequestEntity requestEntity = new StringRequestEntity(reqJson, "application/json", defaultCharset.toString());
                postMethod.setRequestEntity(requestEntity);
                if (headers != null) {
                    for (Header header : headers) {
                        postMethod.setRequestHeader(header);
                    }
                }
                httpClient = new HttpClient();
                httpClient.getHttpConnectionManager().getParams().setSoTimeout(10000);
                httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(10000);
                logger.info("HttpClient.start PostMethod.reqUrl【{}】PostMethod.reqJson【{}】", new Object[]{reqUrl, reqJson});
                int statusCode = httpClient.executeMethod(postMethod);
                logger.info("HttpClient.end PostMethod.statusCode【{}】PostMethod.statusText【{}】", new Object[]{statusCode, postMethod.getStatusText()});
                if (statusCode == HttpStatus.HTTP_OK) {
                    retJson = new String(postMethod.getResponseBody(), defaultCharset);
                    logger.info("HttpClient.end PostMethod.retJson【{}】", new Object[]{retJson});
                }
            } catch (Exception exception) {
                logger.error("HttpClient.error msg【{}】stackTrace【{}】", new Object[]{exception.getMessage(), exception.getStackTrace()});
            } finally {
                if (postMethod != null) {
                    postMethod.releaseConnection();
                }
                if (httpClient != null) {
                    ((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown();
                }
            }
            return retJson;
        }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38

    doGet

        public static String doGetJson(String reqUrl, List<Header> headers) {
            String retJson = "";
            HttpClient httpClient = null;
            GetMethod getMethod = null;
            try {
                Charset defaultCharset = StandardCharsets.UTF_8;
                getMethod = new GetMethod();
                getMethod.setURI(new URI(reqUrl, true, defaultCharset.toString()));
                if (headers != null) {
                    for (Header header : headers) {
                        getMethod.setRequestHeader(header);
                    }
                }
                httpClient = new HttpClient();
                httpClient.getHttpConnectionManager().getParams().setSoTimeout(10000);
                httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(10000);
                logger.info("HttpClient.start PostMethod.reqUrl【{}】", new Object[]{reqUrl});
                int statusCode = httpClient.executeMethod(getMethod);
                logger.info("HttpClient.end PostMethod.statusCode【{}】PostMethod.statusText【{}】", new Object[]{statusCode, getMethod.getStatusText()});
                if (statusCode == HttpStatus.HTTP_OK) {
                    retJson = new String(getMethod.getResponseBody(), defaultCharset);
                    logger.info("HttpClient.end PostMethod.retJson【{}】", new Object[]{retJson});
                }
            } catch (Exception exception) {
                logger.error("HttpClient.doGetJson.error msg【{}】", new Object[]{exception.getMessage()});
                logger.error(exception.getMessage(), exception);
            } finally {
                if (getMethod != null) {
                    getMethod.releaseConnection();
                }
                if (httpClient != null) {
                    ((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown();
                }
            }
            return retJson;
        }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
  • 相关阅读:
    AM@微分中值定理
    【HTML粒子波浪特效】(效果+代码)
    使用Kubesec检查YAML文件安全
    ElasticSearch集群搭建及启动异常的问题
    Verilog HDL语言要素
    供应链 | M&SOM论文解读:零售商响应定价能力对供应链韧性的影响
    Vue在表单校验中trigger属性指定何时触发校验规则
    〖大前端 - 基础入门三大核心之JS篇㊵〗- DOM事件监听及onxxx的使用
    SQL中的正则使用
    数据结构中的七大排序(Java实现)
  • 原文地址:https://blog.csdn.net/qq_27865749/article/details/133160031