插件
为了减少运行占用的系统资源,使开发更简便,Vanilla 默认只运行在 content_by_lua 这个 phrase,但是为了支持业务开发有层次化的请求控制,Vanilla 实现了便捷的插件机制,提供了六个钩子,给请求的细粒度控制提供了可能。下面我们来看看如何使用
Vanilla Plugin 的简单使用
在 Vanilla 项目中使用插件是非常简单的,只需要在 application/plugins/ 路径下实现 Vanilla 的插件 LUA 包即可,插件包可以按需实现 6 个钩子的方法。默认生成的 demo 项目中自动生成了一个 admin plugin,见 application/plugins/admin.lua。六个钩子方法按需实现,空方法可去掉,如下所示:
Vanilla Plugin 的调用
Vanilla Plugins 的调用非常简单,只需要在 application/bootstrap.lua 中实现 initPlugin
方法,并调用 dispatcher
的插件注册方法将插件注入项目( self.dispatcher:registerPlugin(admin_plugin)
),即能在对应的时机执行相关钩子对应的方法
Vanilla 支持的插件钩子
以下列出 Vanilla 支持的 6 中插件钩子
Last updated