• HttpClient学习


      /**
         * 使用GET方式请求 最简单的物流追踪方式,如果某些物流公司的获取追踪信息的方式与此相同,则可以直接调用次方法
         *
         * @param requestUrl
         * @return 追踪信息
         */
        public static String getTrackInfo(String requestUrl) {
            CloseableHttpClient httpClient = HttpClients.createDefault();
            HttpGet httpGet = new HttpGet(requestUrl);
            try {
                CloseableHttpResponse httpResponse = httpClient.execute(httpGet);
                int statusCode = httpResponse.getStatusLine().getStatusCode();
                if (statusCode != HttpStatus.SC_OK) {
                    System.out.println("Method is wrong " + httpResponse.getStatusLine());
                    return null;
                }
                return EntityUtils.toString(httpResponse.getEntity());
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                try {
                    httpGet.releaseConnection();
                    httpClient.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return null;
        }

        /**
         * 使用POST方式请求 最简单的物流追踪方式,如果某些物流公司的获取追踪信息的方式与此相同,则可以直接调用次方法
         *
         * @param requestUrl
         * @return 追踪信息
         */
        public String postTrackInfo(String requestUrl, Map<String, String> params) {
            CloseableHttpClient httpClient = HttpClients.createDefault();
            HttpPost httpPost = new HttpPost(requestUrl);
            try {
                List<NameValuePair> nvps = new ArrayList<NameValuePair>();
                if (params != null) {
                    for (Entry<String, String> entry : params.entrySet()) {
                        nvps.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
                    }
                }
                httpPost.setEntity(new UrlEncodedFormEntity(nvps, "UTF-8"));
                httpPost.setHeader("Content-type", "application/x-www-form-urlencoded");
                HttpResponse httpResponse = httpClient.execute(httpPost);
                int statusCode = httpResponse.getStatusLine().getStatusCode();
                if (statusCode != HttpStatus.SC_OK) {
                    System.out.println("Method is wrong " + httpResponse.getStatusLine());
                    return null;
                }
                return EntityUtils.toString(httpResponse.getEntity());
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                try {
                    httpPost.releaseConnection();
                    httpClient.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return null;
        }

  • 相关阅读:
    2020/5/18
    2020/5/17
    2020/5/15
    2020/5/13
    2020/5/12
    服务器环境配置五大免费主机系统
    6:运算符
    5:练习题
    4:Python的while循环
    3:Python条件语句
  • 原文地址:https://www.cnblogs.com/zhc-hnust/p/6532530.html
Copyright © 2020-2023  润新知