public static String readContentFromPost(String url, String content) throws IOException {
URL postUrl = new URL(url);
HttpURLConnection connection = (HttpURLConnection) postUrl.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setUseCaches(false);
connection.setInstanceFollowRedirects(true);
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded;charset=utf-8");
connection.connect();
DataOutputStream out = new DataOutputStream(connection
.getOutputStream());
//out.writeBytes(content);
//用這個會導致中文亂碼
out.write(content.getBytes());
out.flush();
out.close();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String result="";
String line;
while ((line = reader.readLine()) != null){
result += line;
}
reader.close();
connection.disconnect();
return result;
}
原因可以參考亂碼
其中content格式json格式字符串
telName=一段碼&chute=1&packProperty=分撥&smallNum=1
Map<String,Object> map=new HashMap<>();
****存放參數***
String reqData="";
for (String key:map.keySet()){
reqData+=key+"="+map.get(key)+"&";
}
String content=reqData.substring(0,reqData.length()-1);