传参调用:
String requestUrl = "http://127.0.0.1:21006/sysSms/queryReceiveMessage";
String requestMethod = "post";
JSONObject jsonObject = new JSONObject();
jsonObject.put("pageNo", 1);
jsonObject.put("pageSize", 5);
jsonObject.put("phoneNumbers", 123);
jsonObject.put("receiveTimeBegin", 2020-01-12);
jsonObject.put("receiveTimeBeginEnd", 2021-02-03);
//调用
String send = send(requestUrl, jsonObject, "utf-8");
System.out.println(send+"成功了");
//获取返回值(code为返回值中的某一个key)
JSONObject test = JSONObject.parseObject(send);
System.out.println(test.getString("code"));
方法:
public static String send(String url, JSONObject jsonObject, String encoding){
String body = "";
//创建httpclient对象
CloseableHttpClient client = HttpClients.createDefault();
//创建post方式请求对象
HttpPost httpPost = new HttpPost(url);
//装填参数
StringEntity s = new StringEntity(jsonObject.toString(), "utf-8");
s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
"application/json"));
//设置参数到请求对象中
httpPost.setEntity(s);
System.out.println("请求地址:" + url);
// System.out.println("请求参数:"+nvps.toString());
//设置header信息
//指定报文头【Content-type】、【User-Agent】
// httpPost.setHeader("Content-type", "application/x-www-form-urlencoded");
httpPost.setHeader("Content-type", "application/json");
httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
//执行请求操作,并拿到结果(同步阻塞)
CloseableHttpResponse response = null;
try {
response = client.execute(httpPost);
//获取结果实体
HttpEntity entity = response.getEntity();
if (entity != null) {
//按指定编码转换结果实体为String类型
body = EntityUtils.toString(entity, encoding);
}
EntityUtils.consume(entity);
} catch (IOException e) {
e.printStackTrace();
} finally {
//释放链接
try {
if(response != null){
response.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return body;
}