<aside>
</aside>
드디어 코드를 움직이게 할 시간입니다! 💻 지난 시간에 만든 프로젝트 뼈대에 실제 웹 프레임워크인 FastAPI와 웹 서버인 Uvicorn을 추가해서, 우리만의 작은 API 서버를 만들어 볼 거예요. poetry add라는 아주 중요한 명령어를 배우고, 버전 번호 옆에 붙는 신비한 기호들(^, ~)의 비밀도 파헤쳐 보겠습니다.
poetry add 명령어를 사용하여 프로덕션 의존성을 추가할 수 있습니다.^), 틸드(~) 제약 조건의 의미를 이해합니다.fastapi dev 명령으로 실행할 수 있습니다.지난 시간 구조에서 poetry.lock 파일이 추가되고 pyproject.toml이 업데이트됩니다. main.py 파일은 그대로 유지됩니다.
todo_api/
├── .venv/ <-- poetry install/add 실행 후 생성됨
├── poetry.lock <-- poetry add 실행 후 생성됨!
├── pyproject.toml <-- poetry add 실행 후 업데이트됨!
├── README.md
├── src/
│ └── todo_api/
│ ├── __init__.py
│ └── main.py
└── tests/
└── __init__.py
src/todo_api/main.py (4강과 동일)
from fastapi import FastAPI
# FastAPI 애플리케이션 인스턴스를 생성합니다.
app = FastAPI()
# 루트 경로("/")로 GET 요청이 오면 이 함수를 실행합니다.
@app.get("/")
def read_root():
return {"message": "Hello, Todo API!"}
pyproject.toml (업데이트된 부분)
# ... [project] 섹션 ...
dependencies = [
"fastapi>=0.111,<0.112",
"uvicorn[standard]>=0.30,<0.31",
]
# ... 나머지 부분 ...
poetry addpoetry add <패키지_이름> 명령어는 단순히 패키지를 설치하는 것을 넘어, pyproject.toml 파일에 의존성을 기록하고 poetry.lock 파일을 갱신하는 3가지 작업을 한 번에 수행합니다.