在项目开发时如果整个模块需要RBAC权限验证,但是有一两个不需,例如管理后台登录接口不需要token,其他接口获取数据前需要验证是否已经登录,则需要验证token。
忽略请求方法:
在api文件写接口的Req结构体时g.Meta添加noAuth:"1"属性即可忽略登录验证也就是RBAC权限验证,实例代码如下:
Go
g.Meta `path:"/user/login" noAuth:"1" tags:"Login" method:"post" summary:"登录"`
实战代码:
Go
package user
import (
"goframepro/utility/gf"
"github.com/gogf/gf/v2/frame/g"
)
type LoginReq struct {
g.Meta `path:"/user/login" noLogin:"1" noAuth:"1" tags:"Login" method:"post" summary:"登录"`
Username string `p:"username" d:""` // 用户名
Password string `p:"password" d:""` // 密码
Codeid string `p:"codeid" ` // 数字验证码ID
Captcha string `p:"captcha" ` // 图片验证码
Mobile string `p:"mobile" d:"" dc:"手机号"`
Email string `p:"email" d:"" dc:"邮箱"`
}
type LoginRes struct {
*gf.R
}
了解更多使用技巧可以到社区:https://goflys.cn/goframepro深入查看。