Skip to content

Koa vs Express

相同

  • 都是基于 http 模块来封装的

  • 都有中间件的概念

  • 都可以按照自己的规则实现 MVC,没有约束

  • 同一批人开发的

不同

  • Koa 内部比较小巧(use、ctx、listen),其它功能要安装中间件,Express 内部包含了很 多中间件。

  • express 内部是通过回调函数来实现的(ES5),没用到 Promise,Koa 内部使用了 Promise(ES6)

  • Koa 底层封装了 ctx,Express 内部对原生的 req 和 res 进行封装

js
const express = require('express') // const Koa = require('koa')
 
const app = express() // const app = new Koa()

app.get('/', (req, res) => {
  res.end('OK')
})

app.listen(3000)