zoukankan      html  css  js  c++  java
  • 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;
        }
  • 相关阅读:
    前端性能优化--图片处理(Css Sprites 与 base64)
    CSS规范--春风十里不如写好CSS
    前端性能优化--图片懒加载(lazyload image)
    struts2不同版本在核心filter在web.xml中的配置
    Web.xml配置详解之context-param
    web.xml的加载过程是context-param >> listener >> fileter >> servlet
    web.xml中Listener的作用
    web.xml中Filter的作用
    字符串反转
    fastjson是什么东东?
  • 原文地址:https://www.cnblogs.com/dannyyao/p/6972702.html
Copyright © 2011-2022 走看看