middlewares
HAS内置的middlewares
hlockermw
hlockermw是用于锁定账号的middleware,其依赖于hmemcacheplugin
使用
hsessionmw
hsessionmw是用于session拦截的middleware,其依赖于DatabasePlugin,MemCachePlugin
使用
hpermmw
hpermmw是一个权限控制的middleware,通过perms.json的条件对api进行限制
使用
创建一个middleware/permfuncs.go的文件和perms.json
现在,我们假设需要对
test接口拦截,要求参数name不能为HAS,且change参数不能为false,那么我们需要修改代码如下
完成后按照相关要求访问即会被拦截
{
"data": {},
"error": {
"code": 202,
"desc": "unauthorized access",
"fingerprint": "d27d51929bd4d48f512f717e2e28eb73",
"cause": "request forbidden by middleware"
}
}
自定义middleware
修改内容
完成后重启,访问任意接口,即可看到对应的log