💡 Express 미들웨어 body-parser
bodyParser 모듈 없이는 post, put 요청 메소드의 req.body를 읽어올 수 없다. body 데이터를 읽기 위해서는 이 모듈을 이용해야 한다.
Parser란 가지고 있는 데이터를 내가 원하는 형태의 데이터로 가공하는 과정인 parsing을 수행하는 모듈 혹은 메소드를 일컫는 말이다. 원하는 형식에 맞춰서 해석하는 용도인데 bodyParser말고도 cookieParser, JSON.stringify 등 파서의 종류는 셀 수 없이 많다.
Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as body-parser and multer.
express 문서에 다르면 이 미들웨어 없이 req.body 에 접근하는 경우에는 기본으로 undefined로 설정되기 때문에 body-parser나 multer 같은 미들웨어를 사용하여 요청 데이터 값에 접근해야 한다고 나와있다. 그것도 모르고 계속해서 console 찍어본 나,,
클라이언트에서 post, put 메소드로 서버한테 요청시 (get, delete는 불가) 서버가 그대로 읽을 수 있는 것이 아니라 서버 내에서 읽을 수 있는 형태로 가공해야 서버가 그 값을 사용할 수 있게 되는 것이었다.
💻 설치하기
npm i body-parser
위 명령어로 body-parser를 설치한 후 앱, 라우트 등 원하는 레벨에서 연결시켜주면 된다.
var express = require('express')
var bodyParser = require('body-parser')
var app = express()
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())
나는 아래와 같이 연결해주었다.
🖍 결과
원하는 데이터 잘 받아오는 거까지 확인 완료!
'블록체인 > WEB3 개발' 카테고리의 다른 글
Try building your app with 'next build' before starting the production server. Next.js error (0) | 2022.09.12 |
---|---|
리액트 부트스트랩 버튼 클릭시 사이트 전체 reloading, refreshing 되는거 막는 법, e.preventDefault() (0) | 2022.08.30 |
NFT 거래소를 위한 스마트 컨트랙트 개발 (0) | 2022.08.10 |
ABI (Application Binary Interface) (0) | 2022.08.04 |
이더스캔 API(Etherscan API) 이용해보기 (0) | 2022.08.03 |
댓글