YS's develop story

Query String 과 Path Variable 비교 및 활용 본문

기타/라이징프로그래머 2기

Query String 과 Path Variable 비교 및 활용

Yusang 2021. 2. 9. 23:15

Query String, 쿼리 스트링 활용하기

'건대'라는 글자가 들어가는 특정 카페를 찾기 위해선 어떻게 해야 할까요?

아래와 같이 쿼리스트링을 활용하면 됩니다.

 

cafeRoute.js

cafecontroller.js

사용자가 쿼리 스트링 값을 입력하지 않고

/cafe와 같이 요청을 하게 되면 모든 카페를 출력하고,

/cafe?cafeName=건대

와 같이 요청을 하게 되면 cafeName에 값이 들어가게 되어 그 카페만을 출력하게 됩니다.

 

 

cafeDao.js

쿼리 스트링 처리 부분 쿼리입니다.

여기서 중요한 것은 쿼리를 짤 때 Like concat ('%',?,'%')을 사용해야 한다는 것입니다..

처음에 %?%이런식으로 쿼리를 짰는데 쿼리를 인식을 못했습니다..

 

Postman에서 실행 결과를 확인해 줍시다.

쿼리 스트링을 사용하여 cafeName 값을 지정해 주면 아래와 같이 출력되고,

그렇지 않으면 전체 값이 출력됩니다.

Path Variable

카페 id가 20번인 카페를 조회하고 싶어!! 

이런 경우에는 Path Variable를 사용합니다.

/cafe/:cafeId 와 같이 요청을 하면 됩니다. (cafeId자리에 원하는 값 입력)

 

cafeRoute.js

cafeController.js

Postman 실행 결과

Query String VS Path Variable

Path Variable은 특정 인덱스에 대한 조회.

 

Query String 은 특정 값으로 필터링.

 

Example) 아이디가 20번인 유저 조회  ->  Path Variable 사용 -> GET  /user/:userid

이름이 james이고 20살인 유저 조회  -> Query String 사용  ->  GET /user?userName=james&?age=20

 

만약 어떤 resource를 식별하고 싶으면 Path Variable을 사용하고...
정렬이나 필터링을 한다면 Query Parameter를 사용하는 것이 가장 이상적 입니다!

 

Path Variable

 

Query String

Comments