码迷,mamicode.com
首页 > Web开发 > 详细

HttpClient跨域请求post

时间:2017-12-10 23:02:39      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:exec   utf-8   app   sea   gnu   throw   print   get   ring   

service层

@Override
public Map<String, Object> selectCurrentProgress(String branchesId,String businessId) throws Exception {
//用于结束返回映射结果
Map<String ,Object> map=new HashMap<String,Object>();
//用于判断是否返回成功
int result=0;
// 创建默认的httpClient实例. 
CloseableHttpClient httpclient = HttpClients.createDefault(); 
// 创建httppost 
HttpPost httppost = new HttpPost("请求地址"); 
// 创建参数队列 
List<NameValuePair> formparams = new ArrayList<NameValuePair>(); 
formparams.add(new BasicNameValuePair("branchesId", branchesId));
formparams.add(new BasicNameValuePair("businessId", businessId));
UrlEncodedFormEntity uefEntity; 
try { 
uefEntity = new UrlEncodedFormEntity(formparams, "UTF-8"); 
httppost.setEntity(uefEntity); 
System.out.println("executing request " + httppost.getURI()); 
CloseableHttpResponse response = httpclient.execute(httppost); 
try { 
HttpEntity entity = response.getEntity(); 
if (entity != null) {
String jsonStr=EntityUtils.toString(entity, "UTF-8");
JSONObject jsonObj=JSONObject.parseObject(jsonStr);
if(jsonObj.getInteger("Code")==0){
result=1;
JSONObject dataJSONObj=jsonObj.getJSONObject("Data");
Integer waitingNumber=dataJSONObj.getInteger("要在页面显示的参数1");
Integer remainderNumber=dataJSONObj.getInteger("要在页面显示的参数2");
String estimateWaitingTime=dataJSONObj.getString("要在页面显示的参数3");
map.put("waitingNumber", waitingNumber);
map.put("remainderNumber", remainderNumber);
map.put("EstimateWaitingTime", estimateWaitingTime);
}
System.out.println("--------------------------------------"); 
// System.out.println("Response content: " + EntityUtils.toString(entity, "UTF-8")); 
System.out.println("--------------------------------------"); 
}
} finally {
response.close(); 

} catch (ClientProtocolException e) { 
e.printStackTrace(); 
} catch (UnsupportedEncodingException e1) { 
e1.printStackTrace(); 
} catch (IOException e) { 
e.printStackTrace(); 
} finally { 
// 关闭连接,释放资源 
try { 
httpclient.close(); 
} catch (IOException e) { 
e.printStackTrace(); 


map.put("result", result);
return map;
}

 

Controller层

@RequestMapping("")
@ResponseBody
public Map<String, Object> selectCurrentProgress(String branchesId,String businessId){
Map<String, Object> map = new HashMap<String,Object>();
try {
map = keywordsService.selectCurrentProgress( branchesId, businessId);
} catch (Exception e) {
map.put("result", 1);
map.put("message", "异常");
e.printStackTrace();
}
return map;
}

HttpClient跨域请求post

标签:exec   utf-8   app   sea   gnu   throw   print   get   ring   

原文地址:http://www.cnblogs.com/dudadi/p/8018132.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!