더북(TheBook)

18.3.2 미들웨어

 

Koa 애플리케이션은 미들웨어의 배열로 구성되어 있습니다. 앞서 코드에 app.use 함수를 사용했지요? 이 함수는 미들웨어를 애플리케이션에 등록합니다.

app.use((ctx) => {
  ctx.body = ‘hello world’;
});

 

여기에서 app.use 파라미터로 함수가 하나의 미들웨어입니다. Koa의 미들웨어 함수에서는 두 가지 파라미터를 받습니다. 첫 번째는 이 코드에도 나오는 ctx이며, 두 번째는 next입니다.

ctx는 웹 요청과 응답 정보를 지니고 있습니다. 그리고 next는 현재 처리 중인 미들웨어의 다음 미들웨어를 호출하는 함수입니다. 미들웨어를 등록하고 next를 실행하지 않으면 그다음 미들웨어를 처리하지 않습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.