강의 2: 기본 라우팅 및 엔드포인트 설정
강의 목표
- 라우팅의 개념을 이해하고, 기본 엔드포인트를 설정합니다.
- 간단한 라우트를 통해 API 응답을 제공합니다.
준비물
- 이전 강의에서 설정한 FastAPI 프로젝트
실습 예제
1. 라우팅의 개념
라우팅은 클라이언트의 요청 URL을 특정 함수에 매핑하여 적절한 응답을 반환하는 과정입니다. FastAPI에서는 @app.get, @app.post 등의 데코레이터를 사용하여 라우트를 설정합니다.
2. 기본 엔드포인트 설정
main.py파일을 열고, 새로운 라우트를 추가합니다.from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"Hello": "World"} @app.get("/greet") def greet(): return {"message": "Welcome to FastAPI!"} if __name__ == "__main__": import uvicorn uvicorn.run(app, host="127.0.0.1", port=8000, reload=True)서버를 실행합니다.
uvicorn main:app --reload브라우저를 열고
http://127.0.0.1:8000/greet에 접속하여 "Welcome to FastAPI!" 메시지를 확인합니다.
3. 동적 라우팅
동적 라우팅을 통해 URL에 변수를 포함시킬 수 있습니다.
main.py파일에 아래의 라우트를 추가합니다.@app.get("/greet/{name}") def greet_name(name: str): return {"message": f"Hello, {name}! Welcome to FastAPI!"}서버를 재시작하고, 브라우저에서
http://127.0.0.1:8000/greet/John에 접속하여 "Hello, John! Welcome to FastAPI!" 메시지를 확인합니다.
추가 실습
더 많은 라우트를 추가해보세요. 예를 들어,
/about페이지를 만들어보세요.@app.get("/about") def about(): return {"message": "This is the about page."}브라우저에서
http://127.0.0.1:8000/about에 접속하여 새로운 페이지를 확인합니다.
이제 기본적인 라우팅과 엔드포인트 설정을 할 수 있습니다. 다음 강의에서는 HTTP 메서드를 다루고, 다양한 요청을 처리하는 방법을 학습할 것입니다.
'python_fastapi' 카테고리의 다른 글
| 강의 5: 요청 본문 다루기 (0) | 2024.05.27 |
|---|---|
| 강의 4: 경로 매개변수와 쿼리 매개변수 (0) | 2024.05.27 |
| 강의 3: HTTP 메서드 다루기 (0) | 2024.05.27 |
| 강의 1: FastAPI 소개 및 설정 (0) | 2024.05.27 |
| FastAPI 강의 커리큘럼 (0) | 2024.05.27 |