본문 바로가기
2. 우당탕탕 개발자/2-1. 공부기록

09Feb2020 TIL

by Little Monkey 2020. 2. 9.
반응형

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

댓글