public static String httpRequest(String url, String requestMethod, Map<String, String> headerMap, JSONObject contentMap) {
headerMap.put("Content-Type","application/json; charset=utf-8");
String result = "";
try {
URL restURL = new URL(url);
HttpURLConnection connection = (HttpURLConnection) restURL.openConnection();
connection.setRequestMethod(requestMethod);
connection.setDoInput(true);
connection.setDoOutput(true);
Iterator headerIterator = headerMap.entrySet().iterator();
while(headerIterator.hasNext()){
Map.Entry<String,String> elem = (Map.Entry<String, String>) headerIterator.next();
connection.setRequestProperty(elem.getKey(),elem.getValue());
}
OutputStreamWriter outer = null;
outer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
outer.write(contentMap.toString());
outer.flush();
outer.close();
InputStream ips = connection.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(ips, "UTF-8"));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = in.readLine()) != null) {
buffer.append(line);
buffer.append("\r\n");
}
in.close();
ips.close();
connection.disconnect();
result = buffer.toString();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}