自定义模块开发
自定义模块是FastWeb框架的重要拓展功能,用来扩展和增强服务的能力。通过自定义模块,开发者可以轻松添加特定的功能和特性,使得网站开发更加灵活和高效。本文将演示如何添加自己的模块作为FastWeb的拓展,为框架的壮大与支持提供重要帮助。
以本地缓存模块
localstorage
为例 GITHUB源码
复制项目
复制localstorage
模块源码到新目录
CMakeLists.txt
模块目录的CMakeLists.txt
,请设置模块名称、根据你的模块需要设置包含路径及依赖库。
编写代码
源代码添加到src
目录下
注册函数
函数声明
extern "C" {
/// <summary>
/// 注册模块入口
/// </summary>
/// <param name="sol2"></param>
/// <param name="lua"></param>
/// <returns>
/// 0=成功
/// 1=失败
/// </returns>
DLL_EXPORT int fastweb_module_regist(void* sol2,void* lua);
}
模块项目必须实现该函数,该函数用于FastWeb调用注册模块。FastWeb会传入sol::state*
及lua_State*
指针作为参数,以便C或C++开发相关Lua功能支持。
⚠️ 注意:注册函数会被多次调用
使用
默认配置文件设置模块目录为module
请将编译后的动态链接库复制至此,运行FastWeb可执行程序即可自行加载
⚠️ 注意:编译后的模块需要依赖则创建模块同名文件夹到
module
目录,将所有依赖动态链接库复制至此否则模块将加载失败。