javahttpClient post请求
@RequestMapping(value = {"getTocken"})
@ResponseBody
public String getTocken(RedirectAttributes redirectAttributes,HttpServletRequest request) throws Exception {
String urlString = "http://ceshi.com:8085/token.do";
// 获取默认的请求客户端 DefaultHttpClient 过时有两种方法解决
//1.获取DefaultHttpClient请求
//DefaultHttpClient clients = new DefaultHttpClient();HttpClient client = HttpClientBuilder.create().build();
//2.用CloseableHttpClient 替代DefaultHttpClient
CloseableHttpClient client = HttpClients.createDefault();
// 通过HttpPost来发送post请求
HttpPost httpPost = new HttpPost(urlString);
/*
* post带参数开始
*/
// 第三步:构造list集合,往里面丢数据
List<NameValuePair> list = new ArrayList<NameValuePair>();
BasicNameValuePair basicNameValuePair = new BasicNameValuePair("accessKey", "Ts2zyF8igfEXCHvssF");
BasicNameValuePair basicNameValuePair2 = new BasicNameValuePair("accessSecret", "xCRVJSCN7k4uWVuT4jWZr3Ka5cq7ssMr5G");
list.add(basicNameValuePair);
list.add(basicNameValuePair2);
// 第二步:我们发现Entity是一个接口,所以只能找实现类,发现实现类又需要一个集合,集合的泛型是NameValuePair类型
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(list);
// 第一步:通过setEntity 将我们的entity对象传递过去
httpPost.setEntity(formEntity);
/*
* post带参数结束
*/
// HttpEntity
// 是一个中间的桥梁,在httpClient里面,是连接我们的请求与响应的一个中间桥梁,所有的请求参数都是通过HttpEntity携带过去的
// 通过client来执行请求,获取一个响应结果
CloseableHttpResponse response = client.execute(httpPost);
HttpEntity entity = response.getEntity();
String str = EntityUtils.toString(entity, "UTF-8");
JSONObject jsonObject = JSON.parseObject(str);
String token = "";
String isOk="false";
if(jsonObject.get("result").equals("SUCCESS")) {
JSONObject obj = (JSONObject) jsonObject.get("data"); //返回的数据
token = (String) obj.get("token");
isOk="true";
}
System.out.println(str);
// 关闭
response.close();
return isOk;
}
java httpClient get请求
@RequestMapping(value = {"getECGList"})
@ResponseBody
public String getECGList(String day,RedirectAttributes redirectAttributes,HttpServletRequest request) throws Exception {
// 获取http客户端
CloseableHttpClient client = HttpClients.createDefault();
ServletContext application = request.getSession().getServletContext();
//带参get请求,把参数拼接再url后
String urlString = "http://ceshi.com:8085/ecgs.do?token="+token+"&machSn="+machSn+"&day="+day;
// 通过httpget方式来实现我们的get请求
System.err.println(urlString);
HttpGet httpGet = new HttpGet(urlString);
// 通过client调用execute方法,得到我们的执行结果就是一个response,所有的数据都封装在response里面了
CloseableHttpResponse Response = client.execute(httpGet);
// HttpEntity
// 在httpClient里面,是连接我们的请求与响应的一个中间桥梁,所有的请求参数都是通过HttpEntity携带过去的
// 所有的响应的数据,也全部都是封装在HttpEntity里面
HttpEntity entity = Response.getEntity();
// 通过EntityUtils 来将我们的数据转换成字符串
String str = EntityUtils.toString(entity, "UTF-8");
System.out.println(str);
// 关闭
Response.close();
return str;
}