Javascript/웹 개발

Request param, query, body 차이점

Frankie 2021. 10. 7. 11:22

Request 객체는 API를 컨트롤하기 위한 메소드를 3개 담고 있는데

 

- param

- query

- body

 

1. req.param : 주소에 포함된 변수를 담는다. 예를 들어 https://yunbo96.tistory.com/post/12345 라는 주소가 있으면 12345를 담는다.

 

2. req.query : 주소 바깥 , ? 이후의 변수를 담는다. 예를 들어 https://yunbo96.tistory.com/post?nickname=hi 일 경우 hi를 담는다.

 

3. req.body : XML, JSON, Multi-Form 등의 데이터를 담는다. 당연히 주소에선 확인할 수 없다. 요청 본문에 제출된 키-값 데이터 쌍을 포함한다. req.body는 body-parser를 사용하기 전에는 default 값으로 undefined로 설정되기 때문에 body-parser를 사용하여 해결해야 한다.(express.json(), express.urlencoded() 와 같은 미들웨어를 사용해야 한다.)