query string는 query parameter,쿼리 매개변수 라고도 불리는데
이 방법은 url 경로 뒤에 입력 데이터를 제공하는 방식입니다.
https://velog.io/write?id=123456789
https://velog.io/write?id=123456789&title=테스트제목
이와같이 url 뒤에 ?
를 붙인뒤 데이터를 넣으며, key와 value로 이루어져 있다.
또 데이터를 여러개 보낼때에는 &
를 사용한다.
path variable는 이름과 같이 경로를 변수로 사용하는 방식입니다.
https://velog.io/write/123456789
https://velog.io/write/123456789/테스트제목
123456789과 테스트제목을 변수로 사용할 수 있습니다.
똑같은 데이터를 보낸다고 했을때
name = 공수정
age = 25
Query String
user?name=공수정&age=25 // user중에 이름이 공수정이고, 나이가 25살으로 필터링된 결과 조회
Path Variable
user/name/25 // 이름이 공수정이고, 나이가 25살인 user.
만약 이름이 공수정이고, 나이가 25살인 유저가 없는 경우라면,
Query String은 빈 결과값
을 결과로 보내고, path Variable는 없는 페이지가 되니까 404 error
를 발생시킬 것입니다.
따라서 검색 결과가 없으면 없다고 리턴하는 Query String은 해당 데이터를 통해 필터링을 할 때, 검색 결과가 없으면 404 error 발생을 하는 path Variable는 해당 내용의 식별을 할 때 사용하는 것이 이상적입니다.
참고
1. Query String 과 Path Variable 비교 및 활용
2. URL 기술 : 1) 쿼리 스트링과 Path 변수 이해하기
3. [Web] Path Variable VS Query Parameter
4. [TIL] Web : Query Parameter VS Path Variable