728x90
📌 Path parameter 와 Query string 구분과 사용 용도
Path parameter 와 Query String 의 공통점
모두 HTTP 요청에서 파라미터를 전달하는 방식
Path parameter
/users/1 // 아이디가 1인 사용자를 가져온다
/users/{1}
- URL 경로의 일부로 파라미터를 전달
- 경로 변수(Path variable)를 사용하여 파라미터를 전달하며, '{}'로 변수를 감싸서 표시
- 원하는 조건의 데이터를 혹은 하나의 데이터에 대한 정보를 받아올 때 사용 (자원 식별용)
- 일반적으로 RESTful API에서 사용되며, URL 자체가 파라미터 정보를 전달
- 파라미터를 전달할 때 key와 value를 쌍으로 전달하지 않는다.
- 모든 메서드에서 사용 가능
Query String
/users?id=1 // 아이디가 1인 사용자를 가져온다
- URL 뒤에 '?' 를 붙이고 파라미터를 key-value 쌍으로 전달
- 파라미터는 '&'로 구분되며, '='로 key와 value를 구분
- 파라미터를 전달할 때 key와 value를 쌍으로 전달하기 때문에, 파라미터를 생략하거나 순서를 변경해도 문제가 없다.
- 쿼리 파라미터와 쿼리 스트링은 같은 표현
- 데이터 정렬/필터링/페이지네이션(수 조절)/ 검색 등에 사용
- 브라우저의 캐시와 검색 엔진에서 높은 가중치를 부여
- post 방식으로 던질 때 request body에 데이터를 포함해서 던지기에 Query string 방법을 굳이 사용하지 않아도 된다.(Ref1)
✔ Pagination 에서 사용 되는 경우 예시
GET /products?offset=0&limit=100 //0번부터 100번까지 호출
- GET 방식은 보통 Request body 를 사용하지 않는 것이 일반적이다. 쿼리 스트링을 통해서 직관적으로 데이터 보임
<참고자료>
https://ryan-han.com/post/translated/pathvariable_queryparam/
728x90
'Spring' 카테고리의 다른 글
[spring] interceptor 개념 및 적용하기 (1) | 2024.02.02 |
---|