[1분 패키지 소개] : body-parser를 소개합니다. 하지만, body-parser를 쓰지 마세요.

.

body-parser는 node.js 모듈입니다.

클라이언트 POST request data의 body로부터 파라미터를 편리하게 추출합니다.

.

body-parser가 없을 때의 문제점 : undefined

저는 다음과 같은 데이터를 body에 담아 POST request 를 보내고자 합니다.

서버단에서 express를 써서 POST request를 처리하는 방법은 다음과 같습니다.

그런데, 위 코드 기준 5번째 줄 console.log(req.body) 라인에서 undefined Error를 마주하게 됩니다.

req.body는 body-parser를 사용하기 전에는 디폴트 값으로 Undefined이 설정되기 때문입니다. (출처: Express Docs)

.

해결방안은 body-parser입니다.

.

body-parser를 설치합니다.

모듈을 불러오고, express에 붙여 사용합니다.

이제는 body의 userId값과 password를 읽어낼 수 있습니다.

.

한 걸음 더

.

express.js도 빌트인 body parser를 넣었다는 점을 알게 되었습니다.(Express v4.16.0 기준)(출처: Express Docs)

그래서 다음과 같이 써도 문제는 해결됩니다.

.

.

Express 쓸 때, 바디 파서를 따로 임포트하지 않아도 된다는 점, 기억해두세요!

.

그럼 이만 안녕히 계세요. 개발자 chullin이었습니다. 궁금하신 점들과 어려운 내용들은 댓글로 해결해주시면 좋겠습니다. 도움이 되신 분들로부터의 Clap은 큰 힘이 됩니다!

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store