[ Node.js ] Koa Framework
💡What is Koa ?
Express.js
개발팀이 새롭게 만든 프레임워크.
Express Framework
에 비해서
- async / await에 대한 기능이 좀 더 우수하고 (에러를 catch하는 등)
- 매우 가벼운 프레임워크라는 점이 차이가 있다.
이러한 Koa Framework
는 middleware Array
로 구성되어 있다고 한다!
💡app.use
const Koa = require('koa');
const app = new Koa();
app.use(... => ...)
미들웨어 함수를 애플리케이션에 등록하며, 등록되는 순서대로 처리한다.
여기서 미들웨어 함수는, 다음과 같이 parameter
을 받는다.
app.use((ctx, next) => ...)
ctx
: Context의 줄임말. 웹 요청과 응답에 관한 정보를 지니고 있다.next
: 현재 처리 중인 미들웨어의 다음 미들웨어를 호출. 미들웨어를 등록 후,next
함수를 호출하지 않을 시, 다음 미들웨어를 처리하지 않는다.
또, 이러한 next
를 호출하면 Promise
를 반환한다. 따라서 다음에 처리해야 할 미들웨어가 끝나야 완료된다.
만약 다음과 같은 코드가 있다면,
(... 코드 중략)
next().then(() => {
console.log('END');
});
Promise
를 먼저 처리한 후, 그다음에 'END'를 출력하는 방식으로 전개될 것이다.
만약 위 미들웨어 함수가 async
로 이루어져 있다면,
(...코드 중략)
await next();
console.log('END');
해도 똑같이 작동할 것이다.
💡koa-router
따로 추가로 설치해야하는 module
.
다른 주소로 요청이 들어올 경우 다른 작업을 처리할 수 있도록 해줌.
const Router = require('koa-router');
const router = new Router();
router.get('/', ctx => ctx.body = "HOME");
여기서 router.get
은 (라우트의 경로
, 해당 라우트에 적용할 미드웨어 함수
)를 parameter
로 받는다.
이외에도 post
, put
, delete
, patch
등의 키워드가 있다.
메서드 | 설명 |
---|---|
GET | 데이터를 조회할 때 사용 |
POST | 데이터를 등록할 때 사용. 인증 작업을 거칠 때 사용하기도 함. |
DELETE | 데이터를 삭제할 때 사용 |
PUT | 데이터를 새 정보로 전체 교체할 때 사용 |
PATCH | 특정 필드를 수정할 때 사용 |
Author And Source
이 문제에 관하여([ Node.js ] Koa Framework), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jengyoung/Node.js-Koa-Framework저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)