request.body에 있는 데이터에 접근하기 위해 사용
//application/json 방식의 Content-Type 데이터
bodyParser.json();
//text/xml 방식의 Content-Type 데이터
bodyParser.text();
//application/x-www-form-urlencoded Content-Type 데이터
bodyParser.urlencoded({extended: true});
extended: true /false 차이점
- true : qs모듈을 사용하여 쿼리 스트링 값을 해석
- false : querystring 모듈을 사용하여 쿼리 스트링 값을 해석
let data = {
info: {
name: 'andy',
age: 33
},
hobby[1]: sport,
hobby[2]: coding
};
//qs.parse(data) 의 결과
{
info: {
name: 'sejoon',
age: '30'
},
hobby: ['sport', 'coding']
}
//querystring.parse(data)의 결과
{
'info[name]': 'andy',
'info[age]': '33',
'hobby[1]': 'sport',
'hobby[2]': 'coding'
}
전달되는 객체(object)에 depth가 있을 경우에 인코딩 방식이 달라진다.