본문 바로가기
ZB 백엔드 스쿨/과제

서울시 공공와이파이 정보 OPEN API 받아오기 - (파싱까지 완료)

by son_i 2023. 9. 2.
728x90

https://fbtmdwhd33.tistory.com/264

 

[Java] 공공데이터 포털 오픈 API 사용 방법.

✏️개요 오랜만에 작성하는 이번 글의 주제는 공공데이터 포털의 오픈 API 사용방법이다. 공공데이터 포털은 정부에서 운영하는 오픈 API 서비스로 정부의 공공기관들이 운영되는 과정에서 수

fbtmdwhd33.tistory.com

 

openAPI 정보 가져오기 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

public class API_test {

	public static void main(String[] args) throws IOException {
		StringBuilder sb = new StringBuilder("http://openapi.seoul.go.kr:8088");
		sb.append("/" + URLEncoder.encode("인증키 직접입력", "UTF-8"));
		sb.append("/"  + URLEncoder.encode("json", "UTF-8"));
		sb.append("/" +  URLEncoder.encode("TbPublicWifiInfo","UTF-8"));
		sb.append("/" +  URLEncoder.encode("1","UTF-8"));
		sb.append("/" + URLEncoder.encode("20","UTF-8"));
		
		URL url = new URL(sb.toString());
		
		HttpURLConnection conn = (HttpURLConnection) url.openConnection();
		conn.setRequestMethod("GET");
		conn.setRequestProperty("Content-type", "application/json");
		
		System.out.println("Response code: " + conn.getResponseCode());
		
		BufferedReader rd;
		if (conn.getResponseCode() >= 200 && conn.getResponseCode() <=300) {
			rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
		} else {
			rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
		}
		
		StringBuilder s = new StringBuilder();
		String line;
		while((line = rd.readLine()) != null) {
			s.append(line);
		}
		
		rd.close();
		conn.disconnect();
		
		System.out.println(s.toString());
	}

}

콘솔에 결과 뜬다. Java 파일에서 호출하기 일단 성공