예를 들어 /user/:name 경로가 있으면 "name"속성을 req.params.name으로 사용할 수 있다.
https://params/user/12341234
일 경우 12341234를 받는다.
이 속성은 경로의 각 쿼리 문자열 매개 변수에 대한 속성이 포함 된 개체다.
예를 들어 https://query/search?searchWord=구글검색
이면
searchWord 매개변수(parameter)의 구글검색 이라는 값(argument)을 가져온다.
JSON 등의 데이터를 담을때 사용한다. (주로 POST로 유저의 정보 또는 파일 업로드를 보냈을 때 )
요청 본문에 제출 된 키-값 데이터 쌍을 포함한다. 기본적으로 이는 정의되어 있지 않으며 express.json(), express.urlencoded()와 같은 미들웨어를 사용해야한다.
위의 말은 쉽게 설명하자면 req.body는 body-parser를 사용하기 전에는 default 값으로 Undefined 설정되기 때문에 body-parser를 사용하여 해결해야 오류를 뿜지 않는다.
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extends: true }))
↓
↓ // Express 4.16.0버전 부터 body-parser의 일부 기능이 익스프레스에 내장
↓ // 아래와 같이 사용 가능하다
app.use(express.json())
app.use(express.urlencoded({ extends: true}))