public class HttpRequest {
public static JSONObject SendPost(String url, Map<String, String> map) {
CloseableHttpClient client = HttpClients.createDefault();
HttpPost post = new HttpPost(url);
// 设置参数
List<NameValuePair> formparams = new ArrayList<NameValuePair>();
for (Map.Entry<String, String> entry : map.entrySet()) {
formparams.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
}
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(formparams, Consts.UTF_8);
post.setEntity(formEntity);
try {
HttpResponse httpResponse = client.execute(post);
HttpEntity entity = httpResponse.getEntity();
String data = entity.toString();
System.out.println("获取的数据" + data);
InputStream instreams = entity.getContent();
String str = ConvertStreamToString(instreams);
System.out.println("Response:" + "\n" + str);
JSONObject jsonObject = JSONObject.fromObject(JSON.parseObject(str));
/* JSONArray family = jsonObject.getJSONArray("monitorList");
for (int i=0;i<family.size();i++){
JSONObject ob = (JSONObject) family.get(i);//得到json对象
System.out.println(ob.getString("monitorName"));
}
System.out.println(family);*/
return jsonObject;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
public JSONObject SendGet(String url, Map<String,String> map) {
CloseableHttpClient client = HttpClients.createDefault();
String urlget = url;
String token="";
Integer count=1;
if (map!=null){
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getKey().equals("Ttoken")){
token=entry.getValue();
continue;
}
if (count==1){
urlget=urlget+("?" + entry.getKey() + "=" + entry.getValue());
}
else {
urlget=urlget+("&&" + entry.getKey() + "=" + entry.getValue());
}
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
count=count+1;
}
}
org.apache.http.client.methods.HttpGet get = new org.apache.http.client.methods.HttpGet(urlget);
get.setHeader("Accept", "application/json;charset=utf-8");
if (token!=null&&!token.equals("")){
get.setHeader("Ttoken",token);
}
try {
HttpResponse httpResponse = client.execute(get);
HttpEntity entity = httpResponse.getEntity();
String data = entity.toString();
System.out.println("获取的数据" + data);
InputStream instreams = entity.getContent();
String str = ConvertStreamToString(instreams);
System.out.println("Response:" + "\n" + str);
JSONObject jsonObject = JSONObject.fromObject(JSON.parseObject(str));
return jsonObject;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
// Convert stream to string
public static String ConvertStreamToString(InputStream is) {
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line = null;
try {
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
} catch (IOException e) {
System.out.println("Error=" + e.toString());
} finally {
try {
is.close();
} catch (IOException e) {
System.out.println("Error=" + e.toString());
}
}
return sb.toString();
}
}
java 发送getpost带参请求返回json数据
最新推荐文章于 2024-06-19 15:15:00 发布