您的位置:首页 > 理论基础 > 计算机网络

使用HttpGet 发送 json格式的参数

2017-09-04 16:03 441 查看
由于工作需要使用java实现http客户端发送get请求,且参数值为json格式,几经周折得以实现,现在记录分享如下:

hashMap 参数实例:

Map<String, Object> indata = new HashMap();
indata.put("berthstatus", 1);
indata.put("berthcode", "22333");
indata.put("parkcode", "6688");
Map<String, Object> param = new HashMap();
param.put("indata",indata);


具体实现函数:

protected void requestService(Map<String,Object> reqmap) throws Exception {

JSONObject obj = new JSONObject(reqmap);
String r = URLEncoder.encode(obj.toString(), "UTF-8");
String reqUrl = "http://192.168.17.35:8888/getParkInfo?jsonString=" + r;
System.out.println("请求参数:" + reqUrl);
CloseableHttpResponse response = null;
CloseableHttpClient client = null;
String res = null;
HttpGet httpGet = new HttpGet(reqUrl);
System.out.println("executing request" + httpGet.getRequestLine());
try {
client = HttpClients.createDefault();
response = client.execute(httpGet);

if (response.getStatusLine().getStatusCode() == 200) {

String result = EntityUtils.toString(response.getEntity());

System.out.println("executing result---连接正常" + result);
} else {
System.out.println("executing result---服务器连接异常");
}

} catch (Exception e) {
System.out.println("Exception================" + e.toString());
} finally {
if (response != null) {
response.close();
}
if (client != null) {
client.close();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: