HttpClient 的GET(带参数)、POST请求方式,工具类方法


/**
 * 连接/断开操作 post方式  * @param url  * @param json  */ private boolean connOrDisconnOperator(String url,String json){ CloseableHttpClient client = null;  CloseableHttpResponse response = null;  boolean flag = false;  try{ HttpPost httpPost = new HttpPost(url);  RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(50000) .setSocketTimeout(50000) .setConnectionRequestTimeout(120000).build();  httpPost.setConfig(requestConfig);  List<BasicNameValuePair> list = Lists.newArrayListWithExpectedSize(1);  list.add(new BasicNameValuePair("json",json));  httpPost.setEntity(new UrlEncodedFormEntity(list));  client = HttpClients.createDefault();  response = client.execute(httpPost);  if(response.getStatusLine().getStatusCode() == 200){ InputStream is = response.getEntity().getContent();  Map<String,Object> m = new ObjectMapper().readValue(StringUtil.getString(is),Map.class);  String strState = m.get("state").toString();  if("SUCCESS".equals(strState)){ flag = true;  } }else{ log.error(this.getClass(), "connOrDisconnOperator method fail:" + response.getStatusLine().getStatusCode());  } }catch (Exception ex){ log.error(this.getClass(), "connOrDisconnOperator method error",ex);  }finally { if(response != null){ try { response.close();  } catch (IOException ex) { log.error(this.getClass(), "close response method error", ex);  } } if(client != null){ try { client.close();  } catch (IOException ex) { log.error(this.getClass(), "close client method", ex);  } } } return flag; }
// get方式
public Optional<Map<String,Object>> connOrDisconnOperator(String atisAirPortCode, String url) { CloseableHttpClient client = null;  CloseableHttpResponse response = null;  try{ HttpGet httpGet = new HttpGet(url + "?airportCode=" +atisAirPortCode);  RequestConfig requestConfig = RequestConfig.custom() .setSocketTimeout(5000) .setConnectTimeout(5000) .setConnectionRequestTimeout(120000).build();  httpGet.setConfig(requestConfig);  client = HttpClients.createDefault();  response = client.execute(httpGet);  if(response.getStatusLine().getStatusCode() == 200 || response.getStatusLine().getStatusCode() == 500){ Map<String,Object> map = Maps.newHashMapWithExpectedSize(4);  InputStream is = response.getEntity().getContent();  JsonNode jn = new ObjectMapper().readTree(StringUtil.getString(is));   // 解析返回结果  String result = jn.get("state").asText();  if (result.equals("SUCCESS")) { System.out.println("-----------------------------成功");  } else { System.out.println("-----------------------------失败");  } return Optional.of(map);  }else{ return Optional.absent();  } }catch (Exception ex) { log.error(this.getClass(), "getOSInfo() error", ex);  return Optional.absent();  }finally { if(response != null){ try { response.close();  } catch (IOException ex) { log.error(this.getClass(), "close IO error", ex);  } } if(client != null){ try { client.close(); } catch (IOException ex) { log.error(this.getClass(),"close IO error",ex); } } } }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM