강의 3: HTTP 메서드 다루기
강의 목표
- GET, POST, PUT, DELETE 메서드를 이해하고 활용합니다.
- 다양한 HTTP 메서드를 사용하는 간단한 API 엔드포인트를 생성합니다.
준비물
- 이전 강의에서 설정한 FastAPI 프로젝트
실습 예제
1. GET 메서드
GET 메서드는 서버에서 데이터를 가져올 때 사용됩니다.
main.py
파일에 아래의 코드를 추가합니다.@app.get("/items/{item_id}") def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q}
서버를 실행하고, 브라우저에서
http://127.0.0.1:8000/items/1?q=fastapi
에 접속하여 결과를 확인합니다.
2. POST 메서드
POST 메서드는 서버에 데이터를 생성할 때 사용됩니다.
main.py
파일에 아래의 코드를 추가합니다.from pydantic import BaseModel class Item(BaseModel): name: str description: str = None price: float tax: float = None @app.post("/items/") def create_item(item: Item): return {"item": item}
서버를 실행하고, POST 요청을 보내기 위해
http://127.0.0.1:8000/docs
에 접속하여 인터랙티브 API 문서를 사용합니다.
3. PUT 메서드
PUT 메서드는 서버의 데이터를 업데이트할 때 사용됩니다.
main.py
파일에 아래의 코드를 추가합니다.@app.put("/items/{item_id}") def update_item(item_id: int, item: Item): return {"item_id": item_id, "item": item}
서버를 실행하고, PUT 요청을 보내기 위해
http://127.0.0.1:8000/docs
에 접속하여 인터랙티브 API 문서를 사용합니다.
4. DELETE 메서드
DELETE 메서드는 서버에서 데이터를 삭제할 때 사용됩니다.
main.py
파일에 아래의 코드를 추가합니다.@app.delete("/items/{item_id}") def delete_item(item_id: int): return {"item_id": item_id, "message": "Item deleted"}
서버를 실행하고, DELETE 요청을 보내기 위해
http://127.0.0.1:8000/docs
에 접속하여 인터랙티브 API 문서를 사용합니다.
추가 실습
- 다양한 HTTP 메서드를 사용하여 더 많은 엔드포인트를 만들어 보세요.
- 실제 프로젝트에서 데이터를 CRUD(Create, Read, Update, Delete)하는 API를 만들어 보세요.
이제 다양한 HTTP 메서드를 사용하여 API 엔드포인트를 생성하고 처리할 수 있습니다. 다음 강의에서는 경로 매개변수와 쿼리 매개변수를 다루는 방법을 학습할 것입니다.
'python_fastapi' 카테고리의 다른 글
강의 5: 요청 본문 다루기 (0) | 2024.05.27 |
---|---|
강의 4: 경로 매개변수와 쿼리 매개변수 (0) | 2024.05.27 |
강의 2: 기본 라우팅 및 엔드포인트 설정 (0) | 2024.05.27 |
강의 1: FastAPI 소개 및 설정 (0) | 2024.05.27 |
FastAPI 강의 커리큘럼 (0) | 2024.05.27 |