React

외부 API를 활용한 날씨 정보 앱 만들기

외부 API를 화면에 붙일 때는 요청 함수, 로딩 상태, 오류 메시지, 응답 데이터 매핑을 분리해야 유지보수가 쉽습니다. 이 실습은 Axios 인스턴스와 커스텀 훅을 기준으로 날씨 데이터를 가져오고, 실패한 요청도 사용자에게 읽히는 상태로 처리하는 흐름을 잡습니다.

로딩, 오류, 응답 데이터 매핑을 컴포넌트로 나누어 외부 API 앱을 구현하는 기준을 정리합니다.

외부 API를 활용한 날씨 정보 앱 만들기 흐름

1

시나리오: 게시판 CRUD 요청 흐름

로컬 Mock API(json-server, http://localhost:4000)를 연결해 목록 조회, 생성, 삭제 요청의 상태 변화를 한 화면에서 확인합니다.

2

준비 단계: 요청 로직 표준화

baseURL, timeout, 공통 오류 처리 기준을 정해 컴포넌트가 요청 세부 구현에 묶이지 않게 합니다.

3

기본 스타일링 (index.css)

로딩, 오류, 빈 목록, 성공 응답이 서로 구분되도록 버튼과 상태 메시지의 기본 표현을 준비합니다.

4

Axios 인스턴스 설정

공통 설정을 가진 인스턴스를 만들고, 개별 요청은 필요한 endpoint와 method만 넘기도록 단순화합니다.