分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

egg.js 学习之 中间件使用

发布时间:2023-09-06 02:28责任编辑:赖小花关键词:js

1.在框架和插件中使用中间件

编写中间件

我们先来通过编写一个简单的中间件,来看看中间件的写法。

// app/middleware/middlewareOne.js

// app/middleware/middlewareOne.js
module.exports = (options, app) => {
  return async function middlewarreone(ctx, next) {
    const url = ctx.request.url;
    await next();
    ctx.body = `获取到的ip是:${url}`;
  }
};

  

配置

// config/config.default.jsexports.middleware = [‘middlewareOne‘]; // 数组的顺序为中间件执行的顺序

请求会执行 : ?获取到的ip是:/data

router 中使用中间件

以上方式配置的中间件是全局的,会处理每一次请求。 如果你只想针对单个路由生效,可以直接在 app/router.js 中实例化和挂载,如下:

‘use strict‘;/** * @param {Egg.Application} app - egg application */module.exports = app => { ?const { ???router, ???controller ?} = app; ?const isUrl = app.middleware.middlewarreone({params: ‘888‘,}); ?router.get(‘/‘, controller.home.index); ?router.post(‘/login‘, controller.home.login); ?router.post(‘/data‘,isUrl, controller.data.index); ?router.post(‘/upload‘, controller.upload.upload); ?router.get(‘/search‘, controller.data.search);};

  发送请求 同样会执行 结果:/data



egg.js 学习之 中间件使用

原文地址:https://www.cnblogs.com/qq735675958/p/10193313.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved