FastAPI에서 Path와 Query의 차이점
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
FastAPI를 사용하는 웹 개발자, API 설계 초보자
난이도: 초급 (기초 개념 설명)
핵심 요약
- Path parameters는 URL 경로에 포함되며 필수로 입력되어야 한다. 예:
/get_patient_data/1
에서1
은 Path parameter. - Query parameters는 URL의
?
이후에 추가되며 선택적이다. 예:/sorted_patient_list?sort_by=asc
에서sort_by=asc
는 Query parameter. - Path는 리소스 식별에, Query는 필터링/정렬에 주로 사용된다.
섹션별 세부 요약
1. Path parameters의 특징
- URL 경로에 직접 포함되어야 하며, 필수로 요구된다.
- 예:
/users/{user_id}
에서{user_id}
는 Path parameter로, 요청 시 반드시 값이 필요하다. - 경로에 포함된 값은 경로 매칭에 직접적으로 영향을 미친다.
2. Query parameters의 특징
- URL의
?
뒤에 추가되며, 선택적으로 사용된다. - 예:
/search?query=hello
에서query=hello
는 Query parameter로, 요청 시 생략 가능하다. - 주로 필터링, 정렬, 페이징 등의 목적에 사용된다.
결론
- Path parameter는 리소스 식별에, Query parameter는 동적 조건 설정에 적합하다.
- FastAPI에서
@fastapi.get("/items/{item_id}")
와 같이 Path parameter를 정의하고,@fastapi.get("/items/?q=string")
처럼 Query parameter를 사용하는 것이 일반적이다. - API 설계 시 Path와 Query의 목적을 명확히 구분하여 사용자 친화적이고 예측 가능한 인터페이스를 구축해야 한다.