public static void post(String url, byte [] data, String contentType) throws IOException {
HttpURLConnection connection = null;
OutputStream out = null;
InputStream in = null;
try {
connection = (HttpURLConnection) new URL(url).openConnection();
connection.setRequestProperty("Content-Type", contentType);
connection.setDoOutput(true);
out = connection.getOutputStream();
out.write(data);
out.close();
in = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
in.close();
} finally {
if (connection != null) connection.disconnect();
if (out != null) out.close();
if (in != null) in.close();
}
}
This will POST data to the specified URL, then read the response line-by-line.
HttpURLConnection
from a URL
.setRequestProperty
, by default it's application/x-www-form-urlencoded
setDoOutput(true)
tells the connection that we will send data.OutputStream
by calling getOutputStream()
and write data to it. Don't forget to close it after you are done.