做项目的时候碰到一个问题,怎么才能在代码里通过http发起一个请求来调用代码里另外一个接口的url,
都是在同一个项目里,并且只能通过url来请求
有没有大佬知道方法 求解答
HttpClient httpclient = new DefaultHttpClient();
try {
logger.info("=========================================================================================================================================");
logger.info("向【"+serverName+"】发起交易,URL【" + url + "】 提交内容 【" + requestContent + "】");
HttpPost httppost = new HttpPost(url);
httppost.setHeader("Content-Type", "application/xmlstream");
if(headers!=null){
Set<String> keys=headers.keySet();
for(String key:keys){
httppost.setHeader(key,headers.get(key));
}
}
if(requestContent!=null){
httppost.setEntity(new StringEntity(requestContent,ServletUtilities.HTTP_ENCODING));
}
HttpResponse response = httpclient.execute(httppost);
logger.debug(">>HttpResponse>>>"+response.toString());
Integer statusCode = response.getStatusLine().getStatusCode();
if (statusCode != HttpStatus.SC_OK) {
throw new Exceptions(response.getStatusLine().getStatusCode(),"请求核心主机失败(HTTP状态:" + response.getStatusLine().getStatusCode() + ")");
}
HttpEntity entity = response.getEntity();
if (entity != null) {
String revxml = EntityUtils.toString(entity, ServletUtilities.HTTP_ENCODING);
logger.info("接收来自【"+serverName+"】的交易,接收内容 【" + revxml + "】");
logger.info("=========================================================================================================================================");
return revxml;
}
httppost.abort();
} finally {
httpclient.getConnectionManager().shutdown();
}
真的只能使用http请求解决问题?
那也挺简单 springHttpTemplate 或者 Okhttp 都行啊