ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

HTTP请求工具类

2019-06-26 15:37:53  阅读:201  来源: 互联网

标签:responseData HTTP 请求 url param 工具 response log


/**
*
* @Description https post请求,参数为字符串
* @param param
* @param url
* @param socketTimeout 毫秒数量
* @return String
* @throws Exception
* @author X Yang
* @date 2017年6月28日 下午1:28:30
*/

CloseableHttpClient httpclient = HttpClients.custom().setSSLHostnameVerifier(new NoopHostnameVerifier()).build();
String responseData = null;
try {
HttpPost request = new HttpPost(url);
// 解决中文乱码问题
StringEntity entity = new StringEntity(requestData, "utf-8");
entity.setContentType("application/json");
request.setEntity(entity);
RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(360000).setConnectTimeout(600000).build();
// 设置请求和传输超时时间
request.setConfig(requestConfig);
CloseableHttpResponse response = httpclient.execute(request);
url = URLDecoder.decode(url, "UTF-8");
log.info("请求接口:" + url + ",执行状态:" + response.getStatusLine().getStatusCode());
/** 请求发送成功,并得到响应 **/
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
try {
/** 读取服务器返回过来的字符串数据 **/
responseData = EntityUtils.toString(response.getEntity(), "UTF-8");
} catch (Exception e) {
log.error("post请求提交失败:" + url, e);
} finally {
response.close();
}
} else {
responseData = response.getStatusLine().getStatusCode() + "-" + response.getStatusLine().getReasonPhrase();
}
} catch (Exception e) {
log.error("post请求提交失败:" + url, e);
} finally {
try {
httpclient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Timestamp responseTime = new Timestamp(System.currentTimeMillis());
log.debug("第三方接口-响应时间:" + sdf.format(responseTime));
log.debug("第三方接口-响应报文:" + responseData);
return responseData;


}

标签:responseData,HTTP,请求,url,param,工具,response,log
来源: https://www.cnblogs.com/lingl/p/11090181.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有