egg如何扩展response

山水有轻音 2022-05-11 PM 205℃ 0条

response扩展插件

1、在app/extend目录下新建response.js文件

例如 新建一个设置token的response.js的扩展插件

module.exports = {
    set token(token) {
        this.set('token', token)
    }
}

2、在控制层controller里某个控制的js里写入方法

例如我在test.js里面写入

'use strict';

const Controller = require('egg').Controller;

classTestController extends Controller {
   
    async newResponse() {
        const { ctx } = this;
        ctx.response.token = 'weblod'
        ctx.body = 'wxinxianyun'
    }
}

module.exports = TestController;

3、然后在router.js里添加刚才的路由

'use strict';

/**
 * @param {Egg.Application} app - egg application
 */
module.exports = app => {
    const counter = app.middleware.counter();
    const { router, controller } = app;
    router.post('/test', controller.test.index);
    router.post("/test/add", controller.test.add);
    router.post("/test/del", controller.test.del);
    router.post("/test/edit", controller.test.edit);
    router.post("/test/look", controller.test.look);
    router.get("/test/newResponse", controller.test.newResponse);
};

最后在地址栏输入http://localhost:7001/test/newResponse就能看到请求头设置的token了

标签: Egg

非特殊说明,本博所有文章均为博主原创。

评论啦~