에듀테크 프로젝트 대시보드
REST API 설계 원칙
REST란?
REST(Representational State Transfer)는 서버의 기능을 "자원(Resource)" 중심의 URI와
HTTP 메서드로 표현하는 설계 스타일이다. /items/1 은 "1번 아이템"이라는
자원을, 어떤 행위를 할지는 GET·POST·PUT·PATCH·DELETE 같은 메서드가 결정한다. 서버는 요청 사이에 클라이언트 상태를 기억하지 않는다 (Stateless) —
매 요청은 그 자체로 필요한 정보를 모두 담아야 한다.
메서드별 안전성 & 멱등성
안전(Safe): 서버 상태를 바꾸지 않는다 | 멱등(Idempotent): 같은 요청을 N번 반복해도 1번 보낸 것과 결과가 같다.
| 메서드 | 의미 | Safe | Idempotent |
|---|---|---|---|
| GET | 자원 조회 | ✓ | ✓ |
| POST | 새 자원 생성 | ✗ | ✗ |
| PUT | 자원 전체 교체 | ✗ | ✓ |
| PATCH | 자원 부분 수정 | ✗ | ✗ (보통) |
| DELETE | 자원 삭제 | ✗ | ✓ |
장바구니 API 시뮬레이터
버튼을 눌러 가상의 /items API에 요청을 보내보자. 같은 버튼을 여러 번 눌러
POST(멱등 아님)와 PUT/DELETE(멱등)의 차이를 직접 확인할 수 있다.
요청 보내기
서버 자원 상태 — /items
요청 로그
HTTP 상태 코드 카테고리
카드를 클릭하면 대표 코드 예시를 볼 수 있다.
FastAPI로 본 REST 라우팅
이 사이트도 FastAPI로 만들어졌다 — 자원과 메서드가 실제 코드에서 어떻게 매핑되는지 보자.