tyc-server/app/main/api/internal/middleware/authinterceptormiddleware.go
2025-05-09 17:54:28 +08:00

44 lines
1.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package middleware
import (
"net/http"
"tyc-server/app/main/api/internal/config"
)
type AuthInterceptorMiddleware struct {
Config config.Config
}
func NewAuthInterceptorMiddleware(c config.Config) *AuthInterceptorMiddleware {
return &AuthInterceptorMiddleware{
Config: c,
}
}
func (m *AuthInterceptorMiddleware) Handle(next http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
// 从请求头中获取Authorization字段
// authHeader := r.Header.Get("Authorization")
// if authHeader != "" && strings.HasPrefix(authHeader, "Bearer ") {
// // 提取JWT令牌去除Bearer前缀
// tokenString := strings.TrimPrefix(authHeader, "Bearer ")
// // 使用jwtx.ParseJwtTokenV2()解析令牌
// claims, err := jwtx.ParseJwtTokenV2(tokenString, m.Config.AdminConfig.AccessSecret)
// if err != nil {
// resultErr := errors.Wrapf(xerr.NewErrMsg("用户名或密码错误"), "用户登录, 用户名或密码错误, 用户名: %s")
// result.HttpResult(r, w, nil, resultErr)
// return
// }
// // 如果解析失败可以添加处理代码如返回401错误
// }
// 如果没有Authorization头或解析失败继续传递到下一个处理器
// 根据业务需求可以决定是否继续处理请求
next(w, r)
}
}