Bootstrap

koa中间件梳理(洋葱模型)

koa介绍

koa是一个精简的node框架,它主要做了以下事情:

  1. 基于node原生req和res为request和response对象赋能,并基于它们封装成一个context对象。
  2. 基于async/await(generator)的中间件洋葱模型机制。

koa1和koa2在源码上的区别主要是于对异步中间件的支持方式的不同。

  1. koa1是使用generator、yield)的模式。
  2. koa2使用的是async/await+Promise的模式。

koa源码解析

目录

── lib

├── application.js      对应     new  Koa()    || ctx.app
├── context.js                   ctx
├── request.js                 
;