• [Node.js] req.params와 req.query

    2023. 5. 27.

    by. 지은이: 김지은

    728x90

     

    req.params / req.query 둘 다 URL의 매개변수에 접근하는데 사용한다.

    1. req.params

    req.params는 URL 경로에서 콜론(:) 으로 시작하는 값을 정의한다.

    /users/:id 같은 경로에 id라는 URL경로 매개변수가 있을 때 req.params.id로 매개변수 값을 가져올 수 있다.

    /users/1234 라고 할 때  req.params.id => '123' 반환

     

    2. req.query

    req.query는 URL의 물음표(?) 이후에 오는 key=value 형태의 파라미터로 전달한다.

    예를 들어 /search?keyword=apple&page=1 같은 URL에 keyword와 page 매개변수가 있을 때

    keyword와 page는 key이고, apple과 1은 value이며 '&' 기호로 여러개의 쿼리 매개변수를 구분한다.

    /search?keyword=apple라고 할 때 req.query.keyword => 'apple'반환

     

    둘 중 뭘 사용해야할까?

    req.params는 일반적으로 동적인 부분에 대한 데이터를 가져올 때 사용한다. 

    예를 들어 users/:id에서 :id는 개별 사용자의 id값을 나타내며 주로 하나의 값을 가져오는데 사용,

     

    req.query 쿼리 매개변수는 Key=value 형태로 URL에 여러개의 매개변수와 그 값을 전달할 때 사용한다.

    예를 들어 필터링, 정렬, 페이지네이션 과 같은 다양한 옵션 적용 시 사용.

     

    req.params = 단일 값, 식별자

    req.query = 여러개의 매개변수, 옵션 전달

     

     

    댓글