• apache http get 和 post 请求


    1、首先要把jar依赖进项目

    <dependency>
          <groupId>org.apache.httpcomponents</groupId>
          <artifactId>httpclient</artifactId>
          <version>4.5.3</version>
    </dependency>

    2、get/post方法

    /**
         * http post 请求
         * 1、创建 client 实例
         * 2、创建 post 实例
         * 3、设置 post 参数
         * 4、发送请求
         */
        public static String post(String url, Map<String, String> params) {
            if (url == null) {
                LOGGER.info("http url can not be empty!");
            }
            String respCtn = "";
            // 1、创建 client 实例
            CloseableHttpClient httpclient = HttpClients.createDefault();
            // 2、创建 post 实例
            HttpPost post = new HttpPost(url);
            
            ArrayList<NameValuePair> reqParams = null;
            if (params != null && !params.isEmpty()) {
                reqParams = new ArrayList<NameValuePair>();
                for (Map.Entry<String, String> e : params.entrySet()) {
                    reqParams.add(new BasicNameValuePair(e.getKey(), e.getValue()));
                }
            }
    
            HttpResponse response = null;
            try {
                if (reqParams != null)
                    // 3、设置 post 参数
                    post.setEntity(new UrlEncodedFormEntity(reqParams, "UTF-8"));
                // 4、发送请求
                response = httpclient.execute(post);
                respCtn = EntityUtils.toString(response.getEntity());
            } catch (Exception e) {
                LOGGER.error("Fail to connect to remote host [" + url + "]" + e);
            } finally {
                if (httpclient != null) {
                    try {
                        httpclient.close();
                    } catch (IOException e) {
                    }
                }
            }
            return respCtn;
        }
    
    /**
         * http get 请求
         * 
         * @param String
         *            url
         * 
         */
        public static String doGet(String url) {
            if (url == null || url.isEmpty()) {
                LOGGER.info("http url can not be empty!");
            }
            String respCtn = "";
            CloseableHttpClient httpclient = HttpClients.createDefault();
            try {
                HttpResponse response = null;
                HttpGet get = new HttpGet(url);
                response = httpclient.execute(get);
                respCtn = EntityUtils.toString(response.getEntity());
            } catch (Exception e) {
                throw new RuntimeException(e.getMessage());
            } finally {
                if (httpclient != null) {
                    try {
                        httpclient.close();
                    } catch (IOException e) {
                    }
                }
            }
            return respCtn;
        }
  • 相关阅读:
    HDFS Namenode 高可用
    旁路模式,numa、mmu、调整内存分页大小
    k8s 调度 GPU
    破解 CSDN 登录后才能复制
    微信小程序开发video遮罩功能(禁止拖动进度条)
    微信小程序之下拉刷新
    微信小程序JS中文排序
    vue2 和 vue3 路由使用对比
    Golang 操作mongo
    win10安装CUDA和cuDNN的正确姿势
  • 原文地址:https://www.cnblogs.com/dannyyao/p/6972702.html
Copyright © 2020-2023  润新知