Ai
1 Star 2 Fork 3

树林咖啡/通用用户登录模块

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
middleware.go 1.01 KB
一键复制 编辑 原始数据 按行查看 历史
树林咖啡 提交于 2021-03-19 11:59 +08:00 . 初始化项目
package middleware
import (
"gitee.com/qian/guser/library/response"
"gitee.com/qian/guser/model"
"gitee.com/qian/guser/shared"
"github.com/gogf/gf/frame/g"
"github.com/gogf/gf/net/ghttp"
)
var GUserSessionMiddleware = middlewareService{}
type middlewareService struct {
}
// 自定义上下文对象
func (s *middlewareService) Ctx(r *ghttp.Request) {
// 初始化,务必最开始执行
customCtx := &model.Context{
Session: r.Session,
Data: make(g.Map),
}
shared.Context.Init(r, customCtx)
if userEntity := Session.GetUser(r.Context()); userEntity != nil {
customCtx.User = &model.ContextUser{
Id: userEntity.Id,
Account: userEntity.Account,
}
}
// 将自定义的上下文对象传递到模板变量中使用
r.Assigns(g.Map{
"Context": customCtx,
})
// 执行下一步请求逻辑
r.Middleware.Next()
}
func (s *middlewareService) SessionAuth(r *ghttp.Request) {
user := Session.GetUser(r.Context())
if user == nil {
response.JsonExit(r, 200, "请登录")
}
r.Middleware.Next()
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/qian/guser.git
git@gitee.com:qian/guser.git
qian
guser
通用用户登录模块
92a1e37ec013

搜索帮助