邹方成 42e7cb5f12
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 31s
feat(interceptor): 添加APP端token验证接口并实现用户私有数据鉴权
refactor(api/user): 重构用户相关接口使用token验证替代user_id路径参数

docs: 更新API文档规范,明确私有接口需携带token及返回字段要求

fix(service/user): 避免写入未使用字段的零值导致MySQL校验错误

style: 统一格式化部分代码缩进和导入顺序

chore: 更新DS_Store等IDE配置文件
2025-11-15 00:49:53 +08:00

36 lines
840 B
Go

package interceptor
import (
"bindbox-game/internal/pkg/core"
"bindbox-game/internal/pkg/logger"
"bindbox-game/internal/proposal"
"bindbox-game/internal/repository/mysql"
)
var _ Interceptor = (*interceptor)(nil)
type Interceptor interface {
// AdminTokenAuthVerify 管理端授权验证
AdminTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError)
// AppTokenAuthVerify APP端授权验证
AppTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError)
// i 为了避免被其他包实现
i()
}
type interceptor struct {
logger logger.CustomLogger
db mysql.Repo
}
func New(logger logger.CustomLogger, db mysql.Repo) Interceptor {
return &interceptor{
logger: logger,
db: db,
}
}
func (i *interceptor) i() {}