반응형
body-parser 모듈 (urlencoded, extended 옵션)
: POST 로 요청된 body를 쉽게 추출할 수 있는 모듈이다.
만약 해당모듈을 사용하지 않았을 경우라면, 다음과 같은 이벤트를 등록해줘야 한다.
request
.on("data", chunk => {
body += chunk;
})
.on("end", () => {
body = JSON.parse(body);
});
그러나 body-parser 모듈을 이용해 bodyParser.urlencoded() 를 등록하면, 자동으로 request에 body 속성이 추가되고 저장한다. urlencoded()의 옵션에는 중첩된 객체 표현을 허용을 할 것인지를 표시할 수 있다.
최근 node.js 4.16 상위버전부터는 body-parser 가 별도의 모듈을 설치하지 않아도 내장된 기능을 가지고 간단하게 활용할 수 있게 되었다. app.use(express.urlencoded({ extended: true })); app.use(express.json());를 이용하면 된다.
Express
:http와 http서버의 확장 프레임 워크인 connect컴포넌트를 기반으로 한느 프레임 워크
미들웨어 함수의 우선 순위는 먼저 로드 되는 미들웨어 함수가 먼저 실행된다. 코드의 순서가 중요하다.
미들웨어는 app.use() 이용하여 활용한다.
app.use(cors());
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
//순서가 매우 중요!
두번째 줄과 세번째 줄의 순서가 바뀌었더니 원하는 데로 작동을 하지 않았다. 순서는 매우 중요하다! (⭐️⭐️⭐️⭐️⭐️)
반응형
'2. 우당탕탕 개발자 > 2-1. 공부기록' 카테고리의 다른 글
16Feb2020 TIL (0) | 2020.02.17 |
---|---|
11Feb2020 TIL (0) | 2020.02.12 |
06Feb2020 TIL (0) | 2020.02.06 |
02Feb2020 TIL (0) | 2020.02.03 |
30Jan2020 TIL (0) | 2020.01.31 |
댓글