自定义中间件

调用方式:app.use

文件挂载

开发者可以通过调用该接口来挂载第三方中间件和自定义的中间件,挂载方式有两种:

// 设置应用中间件
const app = require('ibird-core');
const logger = require('koa-logger');
const koaBunyanLogger = require('koa-bunyan-logger');

// 方式一:单个函数
app.use(function (koaApp) {
    // koaApp为koa应用实例
    koaApp.use(koaBunyanLogger());
    koaApp.use(function (ctx, next) {
        console.log('这是一个自定义中间价');
        return next();
    });
    koaApp.use((ctx) => {
        console.log('这是又一个自定义中间价');
    });
    koaApp.use((ctx) => {
        console.log('这是第二个自定义中间价');
    });
});

// 方式二:函数数组
app.use([
    function (koaApp) {
        koaApp.use(logger());
        koaApp.use((ctx) => {
            console.log('这是一个自定义中间价');
        });
        koaApp.use((ctx) => {
            console.log('这是第二个自定义中间价');
        });
    },
    function (koaApp) {
        koaApp.get((ctx) => {
            console.log('这是另一个函数里定义的中间价');
        });
    }
]);

文件夹挂载

可以指定一个存放所有路由的文件夹,ibird在启动的时候会递归该文件夹并挂载所有.js后缀且模块导出为函数的文件。

// 挂载自定义路由
app.useDir(path.resolve(__dirname, 'src/middleware'));

results matching ""

    No results matching ""