액티브 스킬/노드

<Node.js> express.urlencoded가 필요한 이유

디벅잉 2022. 3. 2. 23:22
728x90

 

🎯

 

{ express.urlencoded }

언제 사용하나요?

express 서버로 POST 요청을 할 때 input 태그의 value를 전달하기 위해 사용합니다.

 

무엇인가요?

요청의 본문에 있는 데이터를 해석해서 req.body 객체로 만들어주는 미들웨어입니다.

 

왜 사용하나요?

요청의 본문에 있는 데이터가 URL-encoded 형식의 문자열로 넘어오기 때문에 객체로의 변환이 필요합니다.

cf) JSON 문자열로 넘어오는 경우 express.json() 미들웨어를 사용합니다.

 

어떻게 사용하나요?

예전에는 body-parser 패키지를 별도로 설치해야 했지만 express v4.16.0 부터 내장 라이브러리가 되었습니다.

1. <클라이언트> POST 요청으로 input 태그의 값을 전달합니다(서버에서 name 속성으로 주어진 값(title)으로 참조).

2. <서버> 미들웨어 설정

3. <서버> req.body 객체의 프로퍼티(예제에서는 title)를 변수에 저장하여 활용

 

Q. 요청의 본문 데이터가 어떤 형태로 넘어오는지 확인하는 방법은?

 

📌

 

Node.js 교과서 / 조현영 지음 / 길벗

https://github.com/expressjs/body-parser

https://nodejs.org/en/docs/guides/anatomy-of-an-http-transaction/

http://expressjs.com/ko/api.html#express.json

 

728x90