koa2入门--03.koa中间件以及中间件执行流程

Posted liqian-front-end-engineer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了koa2入门--03.koa中间件以及中间件执行流程相关的知识,希望对你有一定的参考价值。

//中间件:先访问app的中间件的执行顺序类似嵌套函数,由外到内,再由内到外
//应用级中间件
const koa = require(‘koa‘);
var router = require(‘koa-router‘)();
var app = new koa();

//匹配任意路由之前打印日期
app.use(async (ctx,next)=>{
    console.log(new Date());
    await next();
});
router.get(‘/‘,async (ctx)=>{
    ctx.body = ‘首页‘;
});


//路由级中间件
//匹配到news后继续向下匹配路由
router.get(‘/news‘,async (ctx,next)=>{
    console.log(‘这是一个新闻‘);
    await next();
});
router.get(‘/news‘,async (ctx)=>{
    ctx.body = ‘这是一个新闻‘;
});


//错误处理中间件
app.use(async (ctx,next)=>{
    console.log(‘这是一个中间件01‘);
    next();//先处理中间节
    if(ctx.status == 404){
        ctx.status = 404;
        ctyx.body = ‘这是一个404页面‘;
    }else{
        console.log(ctx.url);
    }
});


app.use(router.routes());
app.use(router.allowedMethods());
app.listen(3000);

 

以上是关于koa2入门--03.koa中间件以及中间件执行流程的主要内容,如果未能解决你的问题,请参考以下文章

koa2 从入门到进阶之路

Koa2——中间件

koa2入门使用总结

最新Node.js框架:Koa 2 实用入门

koa2中间件简易分析

koa2中间件简易分析