day227-koa源码结构

要点

  1. lib目录下各个js文件
  2. 各js文件的简介

lib目录下各个js文件

  1. application.js
  2. context.js
  3. request.js
  4. response.js

各js文件的简介

application.js

继承events(class Application extends Emitter),能进行事件监听和事件触发

暴露api:listen(…args)、toJSON()、use(fn)、handleRequest()

  • listen: http.createServer(this.callback()) 对http的封装。

    其中this.callback() 包含中间件的合并,上下文的处理,以及对res的特殊处理

  • use: this.middleware.push(fn) 收集中间件,然后在callback()中,compose(this.middleware),调用这些中间件。

context.js

koa应用上下文ctx,重点在引入的delegate代理,其中包括Response delegation,Request delegation。

访问ctx.repsponse.status可以通过delegate,直接访问ctx.status

request.js

对原生的res、req的一些操作

response.js

对原生的res、req的一些操作

文章作者: lmislm
文章链接: http://lmislm.com/2019/08/29/2019-08-29/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LMISLMのBlog