[JAVA] 공공 API접근해서 JSON 형식으로 내려받기.
반응형
공공 API는 헌혈 API를 사용했다.
활용신청하면 바로 승인되며 신청 후
마이페이지에 가면 승인된 것을 확인 할 수 있고
인증키를 받은것을 확인 할 수있다.
인증키를 인증키 설정을 통해 확인해가며 되는 인증키를 선택하면 된다...
API목록을 누르면 자동으로 입력된 테스트 값을 가지고 request / response 테스트 가능하다.
이제 테스트가 완료됐으면 데이터를 내려받아보자
String apiKey = "";
String uddi = ""
StringBuilder baseURL = new StringBuilder("https://api.odcloud.kr/api")
.append(uddi)
.append("?").append("page").append("=").append("0")
.append("&").append("perPage").append("=").append("0")
.append("&").append("serviceKey=").append(apiKey);
System.out.println(baseURL.toString());
URL url = new URL(baseURL.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Conetnt-type", "application/json");
BufferedReader reader ;
if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300){
reader = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
}else{
reader = new BufferedReader(new InputStreamReader(conn.getErrorStream(), "UTF-8"));
}
StringBuilder builder = new StringBuilder();
String line ;
while((line = reader.readLine()) != null){
builder.append(line);
}
conn.disconnect();
System.out.println(builder.toString());
값을 제대로 입력하면 테스트 결과가 아주 잘 나온다
이때 한글 깨짐 현상이 발생할 수 도 있는데 , inputStreamReader를 생성할 때 UTF-8 형식으로 인코딩 하는걸 명시해주면 해결된다.
반응형
'Study > JAVA & Spring' 카테고리의 다른 글
[Spring] Spring Security (0) | 2024.07.28 |
---|---|
[JS] 두개의 이미지를 겹쳐서 놓고싶을때, Position (0) | 2024.07.17 |
[spring boot] 웹개발을 위한 기본 라이브러리 (0) | 2024.07.10 |
[JAVA] 오라클 연결 싱글톤 구조 변경 (0) | 2022.04.18 |
[JAVA] VS CODE 에서 Oracle Wallet 이용해 Oracle Cloud 접근하기 (0) | 2022.04.17 |
댓글