POST申请
/** * * @param url 申请门路 * @param header 申请头 * @param param 对象参数 * @param path 拼接参数 * @param type 拼接门路true:PathVariable拼接,false:RequestParam拼接,""为不拼接 * @return */ public static String isPost(String url,Map<String,String> header,Object param, Map<String,String> path,String type){// 创立 CloseableHttpClient httpClient=HttpClientBuilder.create().build(); CloseableHttpResponse response=null; String uri=""; try {// 是否须要门路拼接 if (!type.isEmpty()){ if (type.equals("true")){// PathVariable拼接 if (!path.isEmpty()){ for (String key:path.keySet()){ uri+="/"+path.get(key); }// System.out.println("拼接门路: "+uri); } }else if (type.equals("false")){// RequestParam拼接 if (!path.isEmpty()){ uri="?"; for (String key:path.keySet()){ uri+=key+"="+path.get(key)+"&"; } uri=uri.substring(0,uri.length()-1); } } } url=url+uri; System.out.println("拜访门路: "+url);// HttpPost HttpPost httpPost = new HttpPost(url);// 判断是否为空 if (!header.isEmpty()){ for (String key:header.keySet()){// 存入header httpPost.addHeader(key,header.get(key)); } } httpPost.setHeader("Content-Type", "application/json;charset=utf8");// 转化为JSON串 String jsonString = JSON.toJSONString(param); StringEntity entity = new StringEntity(jsonString, "UTF-8");// 传入参数 httpPost.setEntity(entity);// 获取响应体 response=httpClient.execute(httpPost);// 获取响应体状态// System.out.println(response.getStatusLine().getStatusCode());// HttpClient只容许获取一次getEntity String result = EntityUtils.toString(response.getEntity()); System.out.println("响应状态: "+response.getStatusLine().getStatusCode()); System.out.println("响应数据: "+result); return result; } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } try { response.close(); } catch (IOException e) { e.printStackTrace(); } } return "执行产生谬误!"; }
GET
/** * httpClient get申请 * @param url 申请url * @param param 申请参数 form提交实用 * @return 可能为空 须要解决 * @throws Exception * */ public static String sendHttpsGet(String url, String param, String sign) throws Exception { String result = ""; CloseableHttpClient httpClient = null; try { httpClient = getHttpClient(); JSONObject parse = (JSONObject) JSONObject.parse(param); Integer pageCount = (Integer) parse.get("pageCount"); Integer pageNo = (Integer) parse.get("pageNo"); if (pageCount==pageNo){ }else{ url+="?pageCount="+pageCount+"/pageNo="+pageNo; } log.info("申请地址: "+url); HttpGet httpGet = new HttpGet(url); /** * 设置申请头 */ httpGet.addHeader("Content-Type", "application/json"); httpGet.addHeader("Authorization",sign);// httpPost.addHeader("passWord","3er4#ER$3er4#ER$12"); /** * 设置申请参数 */// System.out.println("参数 "+param);// StringEntity stringEntity = new StringEntity(param, "utf-8");// httpGet.setEntity(stringEntity); HttpResponse httpResponse = httpClient.execute(httpGet); int statusCode = httpResponse.getStatusLine().getStatusCode(); if (statusCode == HttpStatus.SC_OK) { HttpEntity resEntity = httpResponse.getEntity(); result = EntityUtils.toString(resEntity); } else { result = readHttpResponse(httpResponse); } } catch (Exception e) { log.info("send lookalike http get request failed, HttpException"+e); throw e; } finally { } return result; }