slaventius 2 years ago
parent 63790b7d54
commit 58ab2f4d86
  1. 25
      internal/auth.go

@ -81,6 +81,16 @@ func (s *AuthServer) parseToken(token string) (*jwt.Token, error) {
})
}
// Проверка наличия токена
func (s *AuthServer) verifyValueToken(tokenHeader string) (string, error) {
authorizationHeaderAttributes := strings.Split(tokenHeader, " ")
if tokenHeader == "" || len(authorizationHeaderAttributes) < 2 {
return "", errors.New("token is empty")
}
return authorizationHeaderAttributes[1], nil
}
// Проверка срока жизни токена
func (s *AuthServer) verifyExpirationToken(token *jwt.Token) error {
now := float64(time.Now().Unix())
@ -96,13 +106,9 @@ func (s *AuthServer) requireAuth(next http.Handler) http.HandlerFunc {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
// ctx := r.Context()
// Получим и проверим идентификатор сессии
authorizationHeader := r.Header.Get(HeaderAuthToken)
authorizationHeaderAttributes := strings.Split(authorizationHeader, " ")
if authorizationHeader == "" || len(authorizationHeaderAttributes) < 2 {
err := errors.New("token is empty")
//
token, err := s.verifyValueToken(r.Header.Get(HeaderAuthToken))
if err != nil {
s.logger.Error(err.Error())
//
@ -110,8 +116,10 @@ func (s *AuthServer) requireAuth(next http.Handler) http.HandlerFunc {
w.Write([]byte(err.Error()))
return
} else {
tokenParsed, err := s.parseToken(authorizationHeaderAttributes[1])
}
//
tokenParsed, err := s.parseToken(token)
if err != nil {
s.logger.Error(err.Error())
@ -137,7 +145,6 @@ func (s *AuthServer) requireAuth(next http.Handler) http.HandlerFunc {
//
// next.ServeHTTP(w, r.WithContext(ctx))
next.ServeHTTP(w, r)
}
})
}

Loading…
Cancel
Save