签入脚本
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"easygoadmin/api/v1"
|
||||
"easygoadmin/internal/service"
|
||||
)
|
||||
|
||||
// ============================== 认证控制器 ==============================
|
||||
|
||||
// CAuth 认证控制器
|
||||
// 薄层控制器,参数解析、权限与日志切面由 router.Bind 统一处理
|
||||
type CAuth struct{}
|
||||
|
||||
// Login 登录
|
||||
// 校验用户名、密码及验证码,成功后签发访问令牌与刷新令牌
|
||||
func (c *CAuth) Login(ctx context.Context, req *v1.LoginReq) (res *v1.LoginRes, err error) {
|
||||
return service.Auth().Login(ctx, req)
|
||||
}
|
||||
|
||||
// Logout 登出
|
||||
// 将当前访问令牌加入黑名单,使其立即失效
|
||||
func (c *CAuth) Logout(ctx context.Context, req *v1.LogoutReq) (res *v1.LogoutRes, err error) {
|
||||
return service.Auth().Logout(ctx, req)
|
||||
}
|
||||
|
||||
// Captcha 图形验证码
|
||||
// 生成图形验证码并返回验证码标识与图片内容
|
||||
func (c *CAuth) Captcha(ctx context.Context, req *v1.CaptchaReq) (res *v1.CaptchaRes, err error) {
|
||||
return service.Auth().Captcha(ctx, req)
|
||||
}
|
||||
|
||||
// Refresh 刷新令牌
|
||||
// 支持 refresh_token 刷新与 password 密码模式两种授权方式
|
||||
func (c *CAuth) Refresh(ctx context.Context, req *v1.RefreshReq) (res *v1.RefreshRes, err error) {
|
||||
return service.Auth().Refresh(ctx, req)
|
||||
}
|
||||
|
||||
// CheckToken 校验令牌
|
||||
// 校验令牌有效性并返回用户ID
|
||||
func (c *CAuth) CheckToken(ctx context.Context, req *v1.CheckTokenReq) (res *v1.CheckTokenRes, err error) {
|
||||
return service.Auth().CheckToken(ctx, req)
|
||||
}
|
||||
|
||||
// RemoveToken 撤销指定令牌
|
||||
// 将指定令牌加入黑名单,实现踢下线
|
||||
func (c *CAuth) RemoveToken(ctx context.Context, req *v1.RemoveTokenReq) (res *v1.RemoveTokenRes, err error) {
|
||||
return service.Auth().RemoveToken(ctx, req)
|
||||
}
|
||||
Reference in New Issue
Block a user