입력 확인
city가 없으면 외부 API를 호출하지 않고 400으로 끝냅니다.
?city=Seoul
클라이언트는 /api/weather만 호출하고, Route Handler가 도시 입력, OPENWEATHER_API_KEY, 외부 응답, 내부 JSON 모양을 모두 관리합니다.
city가 없으면 외부 API를 호출하지 않고 400으로 끝냅니다.
?city=Seoul
API 키는 서버에서만 읽어 OpenWeatherMap 요청에 붙입니다.
process.env
response.ok가 아니면 외부 상태를 내부 오류로 변환합니다.
response.ok
temperature, humidity, description처럼 화면 필드만 남깁니다.
processedData
속도 제한, 캐시, 재시도 정책으로 요금과 실패를 제어합니다.
revalidate
입력값, loading, error, weather 상태를 관리하고 외부 API 키나 원본 URL은 알지 못합니다.
fetch("/api/weather?city=Seoul")