1. 문제의 발단.
- 서버를 만들고 전송하는 것 까지 알아보았다.
- 하지만 매번 전송하고 CORS 적고 머리가 아프다. 미들웨어로 express를 사용하여 편안한 백엔드 코딩 생활을 즐겨보자!
2. 미들웨어?
- 어떠한 요청이 있을 때 그 요청을 받기 전에 한번 거치는 곳이다.
- 그래서 귀찮은 작업, 즉 모든 요청이나 응답에 같은 작업을 해야 할 때 미들웨어를 거쳐 똑같은 작업을 모든 요청이나 응답이 줄 수 있다.
- 종류로는 express, cors(모든 요청과 응답에 header을 따로 붙여 주지 않아도 된다) 등이 있다.
- 물론 만들어서 나만의 미들웨어를 사용할 수 도 있다.
3. Express
- 그중에 가장 대표적인 것이다.
- 대표적인 기능으로는 body-parser(4.16 이상 버전의 express를 사용하면 내장되어 있다) => json파일로 파싱 해주는 기능이 있다.
4. 사용법
const express = require("express");
const app = express();
// express를 requier로 가져와서 app으로 사용할 것이다.
app.use(express.json());
// use로 모든 응답과 요청에 사용하게 된다.
5. next의 고찰
- 미들웨어를 사용할 때에만 next를 3번째 인자로 주게 된다. 아무 때나 붙이는 것이 아니다.
- next를 사용하게 되면 일단 그 내용을 보류하고 다음 응답이 있을 때 같이 내보 네게 된다. (일명, 짬 토스)
- 그러므로 아무 곳에서나 짬 토스를 하는 것이 아니라, 다음 라우터에서도 미들웨어를 받을 수 있도록 사용하게 되는 것이다.
'Coding > Today I Learned' 카테고리의 다른 글
2021.08.09(Mon.) <Styled Components> (0) | 2021.08.09 |
---|---|
2021.08.07(Sat.) <Express 의 자주 사용하는 API> (0) | 2021.08.08 |
2021.08.04(Wen.) <서버 요청보내기 & CORS를 이겨먹는 법> (0) | 2021.08.04 |
2021.08.03(Tue.) <배열의 모든 부분집합 구하기> (0) | 2021.08.03 |
2021.08.02(Mon.) <간단한 useEffect의 규칙> (0) | 2021.08.02 |