본문으로 건너뛰기
백엔드 기초집: Python FastAPILESSON 03

FastAPI 프로젝트 생성과 서버 실행

난이도초급
예상 시간35분
선수지식이전 강의

3강. FastAPI 프로젝트 생성과 서버 실행

1. 이번 강의에서 해결할 문제

설치한 패키지가 실제 HTTP 요청을 받을 수 있는지 확인해야 합니다. 가장 작은 FastAPI 앱과 /health 엔드포인트를 실행합니다.

2. 학습 목표

3. 핵심 개념

FastAPI는 ASGI 애플리케이션을 만들고 Uvicorn은 네트워크에서 요청을 받아 앱에 전달하는 ASGI 서버입니다. app.main:appapp/main.py 모듈의 app 변수를 뜻합니다. --reload는 개발 중 파일 변경을 감지하므로 운영에서는 사용하지 않습니다.

4. 단계별 코드 예시

파일 경로: game-ranking-api/app/__init__.py

app/__init__.py
# app 디렉터리를 Python 패키지로 표시합니다.

파일 경로: game-ranking-api/app/main.py

app/main.py
from fastapi import FastAPI

app = FastAPI(title="Game Ranking API", version="0.1.0")


@app.get("/health", tags=["system"])
def health() -> dict[str, str]:
return {"status": "ok"}

실행 위치: game-ranking-api/

python -m uvicorn app.main:app --reload
Invoke-RestMethod http://127.0.0.1:8000/health

응답은 {"status":"ok"}이며 서버 종료는 Ctrl+C입니다.

5. 코드가 동작하는 이유

데코레이터가 GET /health 요청과 health 함수를 연결합니다. 함수가 반환한 dict는 JSON 응답으로 직렬화됩니다. Uvicorn이 ASGI 호출 규약에 따라 FastAPI 객체를 실행합니다.

6. 자주 하는 실수와 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

FastAPI 프로젝트 생성과 서버 실행 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“FastAPI 프로젝트 생성과 서버 실행”에서 다음 단계로 넘어가기 전에 확인할 핵심은 무엇인가요?
  2. 문제 2“FastAPI 프로젝트 생성과 서버 실행”의 작업 기준으로 ‘8000 포트가 이미 사용 중입니다.’을 진단하거나 바로잡은 선택은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

3강. FastAPI 프로젝트 생성과 서버 실행 미완료 상태