Koa——基于Node.js平台的下一代Web框架。
Koa所谓的“下一代”是相对Express而言的,Koa基于异步流程控制特性,主要是用于改进Node.js开发中的回调地狱痛点。
Koa 是一个新的 web 框架,由 Express 幕后的原班人马打造, 致力于成为 web 应用和 API 开发领域中的一个更小、更富有表现力、更健壮的Web“微”框架。 通过利用 async 函数,Koa 帮你丢弃回调函数,并有力地增强错误处理。 Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。
Koa代码极度精简,是一个极轻量的优雅框架,具体代码可以看Koa的Github仓库。
Koa相当于一个基于http
模块进行封装的、提供中间件写法的微内核模块。Koa约定了中间件写法,使得可以完成Web应用中所有需求,但Koa并没有和任何中间件绑定在一起。
Koa主要有两个版本:v1.x和v2.x,两个版本的核心API基本无差异。
两个版本的差别:
Koa是Node.js Web开发的微内核,其可以应用于:
基于Koa框架的Web开发要点:
http
模块进行封装的);由于Koa本身并没有绑定任何中间件,因此可以使用其作为内核模块,绑定相应中间件,进行定制开发,制作自己的Web框架,如:
Think.js:ThinkJS 是一款面向未来开发的 Node.js 框架,整合了大量的项目最佳实践,让企业级开发变得更简单、高效。从 3.0 开始,框架底层基于 Koa 2.x 实现,兼容 Koa 的所有功能
egg.js:Egg.js 为企业级框架和应用而生,我们希望由 Egg.js 孕育出更多上层框架,帮助开发团队和开发人员降低开发和维护成本。