[BUSGO] 공공데이터 API

CORS 오류가 처음부터 발생했습니다.


서버리스 상태 바로 앞에서 서비스를 만들려고 했을 때 도메인이 일치하지 않아 CORS 오류가 발생했습니다.

해결 방법은 여러가지가 있었지만 백엔드 서버를 구축하고 타임테이블을 DB에 저장하고 싶었기 때문에 백엔드에서 API 호출로 CORS 오류를 수정하기로 했습니다.


익스프레스 서버 생성

(노드) MongoDB 및 Express로 간단한 서버 열기

MongoDB 설정 회원가입 후 새로운 프로젝트를 생성합니다. 새 프로젝트를 클릭합니다. 프로젝트 이름을 입력하고 다음을 클릭합니다. “프로젝트 생성”을 클릭하여 프로젝트를 생성합니다. 클러스터를 생성합니다. “데이터베이스 생성”을 클릭합니다.

kyledev.tistory.com

Node 환경에서 Express와 MongoDB를 통해 간단한 서버를 구축했고, 보안과 무관한 서비스이기 때문에 모든 출처를 공개했습니다.

app.use(
  cors({
    origin: true,
    credentials: true,
  }),
);

그 후 Axios를 사용하여 서버에서 다시 공개 데이터 API 호출을 시도했습니다.

axios
  .get(
    `http://apis.data.go.kr/6410000/busrouteservice/getBusRouteList?serviceKey=${process.env.BUS_DATA_API_KEY}&keyword=6004`,
  )
  .then((res) => {
    console.log(res.data);
  })
  .catch((error) => {
    console.error(error);
  });


문제없이 호출되었습니다!

서비스를 개발하는 과정에서 가용 일일 트래픽이 정해져 있기 때문에 신중하게 개발해야 합니다.