一、简单介绍

1.1、快速开始 (这里省略了安装的过程)

const Koa = require('koa')
const app = new Koa()

app.use( async ( ctx ) => {
  ctx.body = 'hello koa2'
})

app.listen(3000)

1.2、源码简单解析

源码文件主要包含了 application.js 、context.js 、request.js 、response.js

  • application.js 是 Koa 的入口文件封装了 ctx、request、response, 以及核心的中间件处理流程
  • context.js 处理应用上下文,里面直接封装部分request.js和response.js的方法
  • request.js 处理http请求
  • response.js 处理http响应

1.3、中间件的简单开发

这里主要介绍如何使用 async/await 在 koa2 中进行中间件的开发

middleware 在 koa2 中如何使用

const Koa = require('koa')
const logger = require('./middleware/logger-async')

const app = new Koa()

app.use(logger())

app.use(ctx => {
    ctx.body = 'hello middleware'
})

app.listen(3000)

如何编写一个简单的 middleware 中间件

function log(ctx) {
    console.log( ctx.method, ctx.header.host + ctx.url )
}

module.exports = function() {
    return async function(ctx, next) {
        log(ctx)
        await next()
    }
}

// 对,就是这样,so easy

二、 路由

原生 JS 实现 koa 的 router

经过思考

版权声明:本文为erbingbing原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/erbingbing/p/12247446.html