0
点赞
收藏
分享

微信扫一扫

koa和express有哪些不同——《nodejs篇》

颜路在路上 2022-04-29 阅读 54

相同点

两个框架都是对http进行了封装。相关的API都差不多,同一批人所写。

不同点:

  • express内置了许多中间件可以提供使用,而koa没有
  • express包含路由,视图渲染等特性,而koa只有http模块。
  • express的中间件模型为线性,而koa的中间件模型为U型,也可称为洋葱模型的中间件。
  • express通过回调函数实现异步函数,在多个回调、多个中间件写起来容易逻辑混乱。
  • koa通过generator和async/await使用同步的写法处理异步,明显好于callback和promise

express的优缺点

优点:线性逻辑,通过中间件形式把业务逻辑细分、简化,一个请求进来经过一系列中间件处理后再响应给用户,清晰明了。

缺点:基于callback组合业务逻辑,业务callback组合业务逻辑负责时嵌套过多,异常捕获困难。

koa的优缺点

优点

  • 借助co和generator,很好地解决了异步流程控制和异常捕获问题
  • Koa把Express中内置的router、view等功能都移除了,使得框架本身更轻量。

缺点:社区相对小了

举报

相关推荐

0 条评论