关于本书

更多前端技术学习开源学习教程可关注公众号 DeepSeaCode (大海码 )

前言

之前写过一本 《Koa2进阶学习笔记》 作为Koa的入门教程。很多知识点都是一笔带过,没有深入的讲解。这一本书是通过Koa.js的常用中间件实现原理,举一反三来讲解一些Node.js在Web开发过程中的原理和设计模式。
Koa.js 是一个极其精简的Web框架,只提供一下两种功能:

  • HTTP服务
    • 处理HTTP请求request
    • 处理HTTP响应response
  • 中间件容器
    • 中间件的加载
    • 中间件的执行

剩下的其他Web服务所需的能力,就根据开发者的需求去自定义开发,留下了很大的灵活空间,提高了Web服务的开发成本。在我的理解中,Koa.js的灵活度带来的开发成本有以下两种:

  • 框架的设计
  • 中间件的选择

框架的设计,这一因素比较复杂,后续会新开一本书讲解。本书主要是解析常用的Koa.js中间件,抽象出相关中间件的功能原理和实现方式,用demo让读者理解原理,减少对官方源码的依赖,尽量达到“授人予渔”。

目录

  1. Koa.js 原理
  2. Koa.js 的AOP设计
  3. Koa.js 中间件
  4. 狭义中间件-请求/响应拦截
  5. 狭义中间件-context代理
  6. 广义中间件-间接中间件处理