
前言
什么?这是一篇源码解读文章 ? 那必定很枯燥!不看。
我把 Koa 的核心实现剥离成了 7 个小节,按部就班,一步一步带你走进 Koa 的心里世界,不会干巴巴的很难啃~node
我没用过 Koa,会不会看不懂 ?
每一个核心实现我都作了实践和 demo~,很是简单易懂(看完不懂打我)~git
Koa 是什么
Koa 是一个新的 web 框架,由 Express 幕后的原班人马打造, 致力于成为 web 应用和 API 开发领域中的一个更小、更富有表现力、更健壮的基石。 经过利用 async 函数,Koa 帮你丢弃回调函数,并有力地加强错误处理。 Koa 并无捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。
Koa 组成
Koa 源码很是的精简,只有 4 个文件github
- application.js (koa 入口,koa 中间件管理,请求处理,本文重点讲解.)
- context.js (koa 上下文对象,代理 request 与 response 对象的一些方法和属性)
- request.js (koa 请求对象,基于 node http 模块请求信息进行二次封装,并定义一些属性和方法,引用一张图,能够很清楚的看到 request 作了什么)
- response.js (koa 响应对象,基于 node http 模块响应信息进行二次封装,并定义一些属性和方法,引用一张图,能够很清楚的看到 response 作了什么)
碰见 koa
1 . Koa 之 EventEmitterweb
2 . Koa 之 Http 模块app
3 . Koa 之 Use 方法框架
4 . Koa 之 洋葱模型koa
5 . Koa 之 Context 对象async
6 . Koa 之 源码精读 一 函数
7 . Koa 之 源码精读 二 spa