정말 기초적인 FastAPI 튜토리얼 #2 - 경로 파라미터와 자동 문서화
FastAPI에서 경로 파라미터를 다루는 방법과 자동 문서화 기능을 알아봅니다.
이 튜토리얼은 파이썬을 조금 다뤄보신 분들이 FastAPI를 기초부터 배울 수 있게 구성했습니다.
2편에서는 다음 내용을 다룹니다.
• 경로 파라미터를 처리하는 API 만들기
• FastAPI의 자동 문서화(OpenAPI) 살펴보기
경로 파라미터를 처리하는 API 만들기
/user/{user_name}
경로 파라미터는 url 주소의 일부분을 변수로 사용하는 방식입니다. 예를 들어 raccoony
라는 사용자의 정보를 알기 위해 /user/raccoony
에 접근했다면, raccoony
부분을 user_name
변수에 할당하는 것이죠.
api/api.py
파일에 user
메서드를 추가합시다.
@app.get("/user/{user_name}")
def user(user_name):
return {"message": f"My name is {user_name}"}
이제 브라우저에서 http://localhost:8000/user/raccoony를 입력해봅시다. 다음과 같은 결과가 나온다면 성공입니다.
{
"message": "My name is raccoony"
}
실습 과제 #1
앞서 만들었던 multiply API가 쿼리 파라미터 대신 경로 파라미터를 받도록 수정해보세요.
답
@app.get("/multiply/{x}/{y}")
def multiply(x, y):
return {"result": int(x) * int(y)}
- 정답 확인 - 브라우저에서 http://127.0.0.1:8000/multiply/1/2 링크를 열어, 결과가 다음과 같다면 성공!
{
"result": 2
}
FastAPI의 자동 문서화 살펴보기
feat. OpenAPI
FastAPI는 등록된 API 함수들의 입출력 선언을 분석하여, API 문서를 자동으로 만들어줍니다. 지금까지 만든 API들의 문서를 보고 싶다면 브라우저에서 http://127.0.0.1:8000/docs 링크를 열어보세요.
API 문서에는 지금까지 우리가 만들었던 API들이 보입니다. 아무 API나 선택해보면 다음처럼 API의 세부 사항을 확인할 수 있습니다.
API 우상단의 흰색 Try it out
버튼을 눌러보세요. API 상세 화면과 비슷하지만 조금 다르게 생긴 화면에서는 파라미터 폼에 값을 입력하고 API를 실행해 볼 수 있습니다. API를 실행하려면 파란색 Execute
버튼을 누르세요.
API 실행 후에는 다음과 같이 실행 결과가 나타납니다.
요약
- 경로 파라미터를 다루어 보았습니다.
- FastAPI의 자동 문서화 도구를 살펴보았습니다.
그 다음 편에서는...
정말 기초적인 FastAPI 튜토리얼 #3 - 입력 데이터 검증에서는 다음 내용을 다룹니다.
- 파이썬의 타입 힌팅
- 타입 힌팅을 활용한 데이터 검증
COMMENTS