[Node] Middle Ware

자세힌 모르지만 실무에서 들은적은 있었다.
미들웨어라고 한다면 컴퓨터에서 Tmax나 이런 서버사이에서 뭔가를 수행한다라는 것과
L4로 로드벨런싱하는 기계다..?라고만 알고있었지
express를 공부하면서 미들웨어라는 그래도 반가운? 단어가 나와서 찾아보기로 했다.
Express에서
미들웨어란 http 요청과 응답 사이에서의 로깅, 에러처리 , 인증 등 다양한 작업을 수행하는 함수 또는 컴포넌트를 말한다.
(내가 생각했던 것과 비슷하네..?)
express는 node.js에서 프레임워크 중 하나로 응답, 요청등을 수행하고 미들웨어간 요청 제어하는 인자또한 가지고있다.
app.use({요청},{응답},{NEXT})
request - 서버, API에 데이터를 요청하는 행위나 이벤트
responsive - 클라이언트에 요청에 의해 답하는 행위
NEXT는 다음 미들웨어로 로깅을 수행한 후에 호출하는 것을 말한다.
이전 포스트에서도 app.use를 쓰긴했는데
전역 에러처리에 대한 자세한 것은 몰랐었다.
app.use((error, req, res ) => [...});
보면 error는 매개변수로 정의된 것이 아닌 이전의 미들웨어에서 전달된 error를 받는 아규먼트이다.
고로 이 error를 받아서 console.error 처리하면 말 그대로 전역 에러처리가 되는 유용한 기술? 이다.
다시 강조하지만 비동기에서는 미들웨어는 우선순위로 실행되기 때문에 try catch문이나 동기적으로 처리하지 않으면
에러가 아닌 undefined가 뜨기때문에 다시 또 한번 유의하자!
꼭 프로미스에서 .catch를 하자.
'Node.jstesttset' 카테고리의 다른 글
| [Node] JWT , Login 인증 (0) | 2024.01.16 |
|---|---|
| [Node] - bcrypt (1) | 2024.01.14 |
| Node.js 동기/ 비동기 에러처리 (1) | 2023.11.23 |