본문 바로가기
back-front end

[항해99] Express.js의 미들웨어

by lucian 2022. 7. 30.

Express : 자체적으로 최소한의 기능을 갖춘 라우팅 및 미들웨어 웹 Framework

 

Express 내에 있는 미들웨어 함수요청(Request), 응답(Response), 다음의 미들웨어 접근에 대한 권한(next)을 갖는다.

미들웨어는 요청과 응답을 조작하여 기능을 추가하기도 하고, 나쁜 요청을 걸러내기도 한다.

출처: https://inpa.tistory.com/entry/EXPRESS-📚-미들웨어-💯-이해-정리 [👨‍💻 Dev Scroll:티스토리]

 

미들웨어 함수의 진행 과정

 - 요청 및 응답에 대한 동작

 - 요청-응답 주기 종료

 - 다음 미들웨어 호출

 

Express 내의 미들웨어 유형

 - 애플리케이션 레벨 미들웨어 (내가 원하는 경로를 연결할 수 있다.)

 - 라우터 레벨 미들웨어 (내가 원하는 경로를 연결할 수 있다.)

 - 오류 처리 미들웨어

 - 기본 제공 미들웨어

 - 써드파티 미들웨어

 

애플리케이션 레벨 미들웨어

 - app.use() 와 app.method(GET,POST 등등)() 함수를 이용해서 요청(Request, Response) 처리를 해주는 HTTP 메소드이다.

 

 

라우터 레벨 미들웨어

 - 사실상 애플리케이션 레벨 미들웨어와 크게 다르지 않다. express.Router() 인스턴스에 바인드(구체적인 값을 할당)해준다는 점을 제외하면 위의 미들웨어와 다르지 않다. router.method(GET, POST 등등)()으로 애플리케이션 레벨 미들웨어와 같이 동작한다. 

 - 그렇다면 거의 같은데 왜 쓰느냐?  app.use()인 경우 지정한 경로가 같으면 그것을 모두 적용시켜버린다. app.use()이라면 들어오는 모든 요청에 대한 처리를 진행한다. 하지만 이 라우터 미들웨어를 사용하면 특정 url을 기점으로 기능이나 로직을 나누어서 관리할 수 있다. /aaa나 /bbb 로 들어오는 url을 기준으로 /aaa/1234와 /bbb/1234의 동작을 다르게 해줄 수 있다는 점이다.

출처 : https://velog.io/@bohoon100/express.js%EC%9D%98-%EB%9D%BC%EC%9A%B0%ED%84%B0%EC%9D%98-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-%EC%9E%91%EB%8F%99%EC%9B%90%EB%A6%AC

 

출처 : https://velog.io/@bohoon100/express.js%EC%9D%98-%EB%9D%BC%EC%9A%B0%ED%84%B0%EC%9D%98-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-%EC%9E%91%EB%8F%99%EC%9B%90%EB%A6%AC

 

 

 

참고 글 :

https://expressjs.com/ko/guide/using-middleware.html

 

Express 미들웨어 사용

미들웨어 사용 Express는 자체적인 최소한의 기능을 갖춘 라우팅 및 미들웨어 웹 프레임워크이며, Express 애플리케이션은 기본적으로 일련의 미들웨어 함수 호출입니다. 미들웨어 함수는 요청 오

expressjs.com

https://inpa.tistory.com/entry/EXPRESS-%F0%9F%93%9A-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-%F0%9F%92%AF-%EC%9D%B4%ED%95%B4-%EC%A0%95%EB%A6%AC

 

[EXPRESS] 📚 미들웨어 이론 & 실용 💯 정리

미들웨어 작성 미들웨어는 익스프레스의 핵심이다. 요청과 응답의 중간(middle, 미들)에 위치하여 미들웨어 라고 부른다. 미들웨어는 요청과 응답을 조작하여 기능을 추가하기도 하고, 나쁜 요청

inpa.tistory.com

https://velog.io/@bohoon100/express.js%EC%9D%98-%EB%9D%BC%EC%9A%B0%ED%84%B0%EC%9D%98-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-%EC%9E%91%EB%8F%99%EC%9B%90%EB%A6%AC

 

express.js의 라우터와 미들웨어

미들웨어 함수는 req(요청) 객체, res(응답) 객체, 그리고 어플리케이션 요청-응답 사이클 도중 그 다음의 미들웨어 함수에 대한 엑세스 권한을 갖는 함수이다.미들웨어란 간단하게 말하면 클라이

velog.io

 

'back-front end' 카테고리의 다른 글

[항해99] Node.js 심화 주차 키워드  (0) 2022.08.11
[항해99] require()  (0) 2022.07.30
[항해99] ORM  (0) 2022.07.30
[항해 99] Javascript의 특성  (0) 2022.07.18
세션, JWT토큰 - 쿠키 (까먹을 때 보면 좋은 글)  (0) 2022.07.15

댓글