v2.7.0.GA

This commit is contained in:
MaxKey 2021-03-29 14:07:55 +08:00
parent d64db4a2d3
commit 1eeccf42a9
2 changed files with 786 additions and 6 deletions

View File

@ -31,6 +31,7 @@ import org.apache.http.NameValuePair;
import org.apache.http.client.config.RequestConfig; import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.client.HttpClients;
@ -44,13 +45,13 @@ import org.springframework.stereotype.Component;
public class HttpRequestAdapter { public class HttpRequestAdapter {
private static final Logger _logger = LoggerFactory.getLogger(HttpRequestAdapter.class); private static final Logger _logger = LoggerFactory.getLogger(HttpRequestAdapter.class);
public void post(String url,Map<String, Object> parameterMap) { public String post(String url,Map<String, Object> parameterMap) {
HashMap<String,String> headers = new HashMap<String,String>(); HashMap<String,String> headers = new HashMap<String,String>();
headers.put("Content-Type", "application/x-www-form-urlencoded"); headers.put("Content-Type", "application/x-www-form-urlencoded");
post(url , parameterMap , headers); return post(url , parameterMap , headers);
} }
public void post(String url,Map<String, Object> parameterMap,HashMap<String,String> headers) { public String post(String url,Map<String, Object> parameterMap,HashMap<String,String> headers) {
// 创建httpClient实例 // 创建httpClient实例
CloseableHttpClient httpClient = HttpClients.createDefault(); CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse httpResponse = null; CloseableHttpResponse httpResponse = null;
@ -105,10 +106,12 @@ public class HttpRequestAdapter {
httpResponse = httpClient.execute(httpPost); httpResponse = httpClient.execute(httpPost);
// 从响应对象中获取响应内容 // 从响应对象中获取响应内容
HttpEntity entity = httpResponse.getEntity(); HttpEntity entity = httpResponse.getEntity();
String content = EntityUtils.toString(entity);
_logger.debug("Http Response StatusCode " + _logger.debug("Http Response StatusCode " +
httpResponse.getStatusLine().getStatusCode()+ httpResponse.getStatusLine().getStatusCode()+
" , Content " +EntityUtils.toString(entity) " , Content " + content
); );
return content;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} finally { } finally {
@ -128,6 +131,72 @@ public class HttpRequestAdapter {
} }
} }
} }
return null;
}
public String get(String url) {
HashMap<String,String> headers = new HashMap<String,String>();
headers.put("Content-Type", "application/x-www-form-urlencoded");
return get(url , headers);
}
public String get(String url,HashMap<String,String> headers) {
// 创建httpClient实例
CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse httpResponse = null;
// 创建httpPost远程连接实例
HttpGet httpGet = new HttpGet(url);
// 配置请求参数实例
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间
.setConnectionRequestTimeout(35000)// 设置连接请求超时时间
.setSocketTimeout(60000)// 设置读取数据连接超时时间
.build();
// 为httpGet实例设置配置
httpGet.setConfig(requestConfig);
// 设置请求头
if (null != headers && headers.size() > 0) {
Set<Entry<String, String>> entrySet = headers.entrySet();
// 循环遍历获取迭代器
Iterator<Entry<String, String>> iterator = entrySet.iterator();
while (iterator.hasNext()) {
Entry<String, String> mapEntry = iterator.next();
_logger.trace("Name " + mapEntry.getKey() + " , Value " +mapEntry.getValue());
httpGet.addHeader(mapEntry.getKey(), mapEntry.getValue());
}
}
try {
// httpClient对象执行post请求,并返回响应参数对象
httpResponse = httpClient.execute(httpGet);
// 从响应对象中获取响应内容
HttpEntity entity = httpResponse.getEntity();
String content = EntityUtils.toString(entity);
_logger.debug("Http Response StatusCode " +
httpResponse.getStatusLine().getStatusCode()+
" , Content " + content
);
return content;
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭资源
if (null != httpResponse) {
try {
httpResponse.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (null != httpClient) {
try {
httpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return null;
} }
} }

File diff suppressed because one or more lines are too long