알고 넘어가자 : middleware

알고 넘어가자 : middleware

* middleware 란? by Express

최소한의 기능을 갖춘 미들웨어.

라우팅 웹 프레임워크이다.

# 미들웨어 오브젝트 및 함수 : (req, res, next)

1_req : 요청 오브젝트

2_res : 응답 오브젝트

3_next() : 다음 미들웨어 함수에 대한 엑세스 권한을 갖는 함수

# next() 호출 :

1_모든코드실행.

2_요청/응답 오브젝트 변경.

3_요청/응답 주기 종료. (종료하지 않는 경우 반드시 next()를 전달해야 한다.)

4_그 다음 미들웨어 함수를 호출.

# 미들웨어 유형 : expressjs.com

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

app.use() 및 app.METHOD() 함수를 이용해 미들웨어를 앱 오브젝트의 인스턴스에 바인드.

이때의 METHOD는 미들웨어 함수가 처리하는 요청 (GET, PUT, POST 등)

2_라우터 레벨 미들웨어 :

router.use() 및 router.METHOD 함수를 이용해 미들웨어를 로드.

3_오류 처리 미들웨어 :

오류처리 함수는 인자 4개를(err, req, res, next) 받는다.

4_기본 제공 미들웨어 :

express.static은 Express의 유일한 기본 제공 미들웨어 함수.

express.static(root, [options])

5_써드파티 미들웨어 :

Express 앱에 기능 추가하기.

(필참) https://expressjs.com/ko/resources/middleware.html

# app

app.get('/', (req, res, next) => {...}) : get요청에 대한 라우트

app.post('/', (req, res, next) => {...}) : post요청에 대한 라우트

res.status(200) : 성공

res.status(400) : 잘못된 요청으로 인한 실패

res.status(403) : 서버에 클라이언트 요청이 전달됐는데 서버가 접근을 거부함

res.status(404) : 클라이언트가 서버와 통신할 수 있지만 서버가 요청한 내용을 찾을 수 없음

채널톡 아이콘