JAVA/코딩
[JAVA] HttpURLConnection 사용하기
으악꿈
2021. 8. 27. 16:41
728x90
URL url;
HttpURLConnection conn = null;
BufferedReader reader = null;
try {
url = new URL("url 입력"); // 호출할 url 입력
conn = (HttpURLConnection) url.openConnection(); // 커넥션 오픈
if (conn != null) {
// GET, POST 등
conn.setRequestMethod("POST");
// application/x-www-form-urlencoded, application/json 등
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 응답받을 데이터가 있는 경우 true
conn.setDoInput(true);
// 요청시 데이터를 보내야 하는 경우 true
conn.setDoOutput(true);
// 만료시간 설정
conn.setConnectTimeout(10000);
// GET 방식의 경우 url에 같이 추가 ex) http://test.com?type=test
// POST는 아래 방식으로
String param = "type=test";
try (DataOutputStream output = new DataOutputStream(conn.getOutputStream())) {
// AutoCloseable를 상속받는 경우 이와 같이 선언하면 finally문을 별도로 사용하지 않아도 된다.
output.writeBytes(param);
output.flush();
}
// 응답코드가 200인 경우
if (HttpURLConnection.HTTP_OK == conn.getResponseCode()) {
// 응답 데이터를 받는다.
reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuffer buff = new StringBuffer();
String line = null;
while ((line = reader.readLine()) != null) {
buff.append(line);
}
reader.close();
} else{ // 응답코드가 200인 아닌경우
}
conn.disconnect();
}
} catch (Exception e) {
// 예외처리
} finally {
if(conn != null) conn.disconnect();
if(reader != null) reader.close();
}
728x90