调用http的post方式带body参数
import java.net.HttpURLConnection;
import java.net.URL;
//方法,参数params,{"image":"str_base"}
public static String httpPost(String serverURL, String params) {
HttpURLConnection connection = null;
BufferedReader reader = null;
InputStream is = null;
OutputStreamWriter writer = null;
try{
StringBuffer sbf = new StringBuffer();
String strRead = null;
URL url = new URL(serverURL);
connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("POST");//请求post方式
connection.setDoInput(true);
connection.setDoOutput(true);
//header内的的参数在这里set
//connection.setRequestProperty("key", "value");
connection.setRequestProperty("Content-Type", "application/json;charset=\"UTF-8\"");
connection.connect();
writer = new OutputStreamWriter(connection.getOutputStream(),"UTF-8");
//body参数放这里
writer.write(params);
writer.flush();
is = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
while ((strRead = reader.readLine()) != null) {
sbf.append(strRead);
sbf.append("\r\n");
}
reader.close();
is.close();
writer.close();
connection.disconnect();
String results = sbf.toString();
System.out.println("str_base>>>:"+results);
return results;
}catch (IOException e){
e.printStackTrace();
return "";
}finally {
try {
if(connection != null){
connection.disconnect();
}
if(reader != null){
reader.close();
}
if(is != null){
is.close();
}
if(writer != null){
writer.close();
}
}catch (Exception e){
e.printStackTrace();
}
}
}