中间件(Middleware)

发布时间:

这里只列出 CmsWing 特有的,更详细的内容请阅读 Egg.js 文档 中间件(Middleware)

我们约定一个中间件是一个放置在 app/middleware 目录下的单独文件,它需要 exports 一个普通的 function,接受两个参数:

  • options: 中间件的配置项,框架会将 app.config[${middlewareName}] 传递进来。
  • app: 当前应用 Application 的实例。

使用中间件

我们编写好中间件后,只需要在路由管理里面选择就可以了。

分类使用中间件

在路由分类里面选择中间件,这个分类下面的所有路由都会基础这个中间件

路由使用中间件

除了在路由分类中使用中间件,在路由里面也可以单独使用中间件或者不想使用分类中的中间件,可以在路由中排除。

  1. 中间件,我们可以给路由添加单独的中间
  2. 排除中间件,我们可以排除路由分类中不想要的中间件

注意事项

  • Middleware 文件必须放在 app/middleware 目录,可以支持多级目录,使用应用名称作为目录放置,在CmsWing路由管理可以通过目录名级联访问。

    
    app/middleware/mc/authMcToken.js => mc.authMcToken //MCenter 的中间件
    app/middleware/sys/sync_user.js => sys.syncUser //系统中间件
    app/middleware/sys/HackerNews.js => sys.hackerNews //系统中间件
     

sys.authAdminToken

  • 系统后台登录验证中间件,后台系统需要登录登录的页面添加此中间件,我们在应用开发中一般后台的页面或路由都会添加到 后台分类中,默认继承此中间件。

sys.rbac

  • 系统后台权限中间件,已在 后台分类中 添加此中间件。

mc.authAdminToken

  • MCenter 登录验证中间件,已经在 MCenter分类中 添加此中间件。

最后更新时间: 2022-12-06 10:15:33

评论