공공 데이터

성기현·2024년 5월 24일
공공 데이터 

정부, 공공기관에서 -> 수집한 데이터

기상청, 경찰청, 대기 오염, 지질 정보를 누구든 가져다가 쓸수 있는걸 공공 데이터라 한다.

  1. 구글에 공공데이터포털 사이트 접속

  2. 파일을 반환 받을 수 있는 건 csv는 x JSON파일 형식으로 데이터를 가져다 쓸 것이다.

  3. REST API 는 자원의 요청으로만 데이터 요청을 보낼 수 있다

  4. 요청변수에서 항목구분에 필수 부분은 꼭 데이터를 보내줘야한다.

  5. 인증키 발급 신청 안됄 시 직접 api 들어가서 신청

인증키가 INCODING, DECODING 두 가지의 방식이 있다 두 개중 하나를 골라서 하면된다.

  1. 격자 x , 격자 Y 를 사용하면 된다.

  2. 샘플코드 에서 서비스키 칸 안에는 본인이 발급받은 서비스키를 넣어줘야된다.

  1. 서비스키는 개인정보이기 때문에 config.properties 파일에다가 올릴거다.

  1. js 파일에 비동기 요청 1번째 함수를 만들어 준다 서비스키 config.properties에서 얻어오기


  1. 여기에 서비스키가 담길것이다.

  • decoding 값을 넘겨줄때 js 내장객체 URLSearchParams 를 쓸 것이다 그럼 incoding 값이랑 똑같이 되서 넘어가게 된다.

    이렇게 내장객체를 쓰는 이유는 decode 는 뒤에
    == 이 붙어있어 인식을 못하기 때문에 인식하게하려고 js에서 값을 전달하고 내장객체를 사용하게 하려고 하는것이다.


  1. 사이트에 나온 발표일자 , 발표시각의 형태로 나오게 할 코드를
    JS에서 적어줄 것이다.

    오늘 날짜 반환법

    const today = new Date();

    const year = today.getFullYear(); // 2024
    const month = ("0" + (today.getMonth() + 1)).slice(-2);
    const day = ("0" + today.getDate()).slice(-2);

    url 엔 요청주소가 들어간다.

    옵션에 있는 필수사항이 아닌 항목을 작성하지 않게 되면 데이터를 받는 타입이 xml 로 받게된다 그래서 json 으로 받을려면 이것도 작성해줘야한다

단순히 urlsearchparams 안에다가 key:value 형태만 작성해주면 저렇게 알아서 만들어줌 인코딩해서

이렇게만 작성하고 a싱크 어웨이 를 해줘야 servicekey를 얻어올수있따

getServiceKey를 호출했을댸 저기 reponse에서 비동기요청을 할텐데

이렇게 에이씽크 어웨이를 쓰면 이 요청이 끝나기전까지 다음요청을 막아주는것

이렇게 위에 getServiceKey 함수에서

파싱을 했는데 아래 fetchData 에도 getServicekey를 불러왓을때
거기에도 await 를 붙혓다 그 이유는 비동기는 순서를 상관안쓰기 떄문에 순서대로 기다리고 파싱하고 기다리고 파싱하게 하기 위해서이다.

요청 한 주소값을 fetch 요청을 통해 완료해준다.

0개의 댓글