Add missing comments to response.go and middleware.go for better code documentation
This commit is contained in:
parent
94d504ee1e
commit
9c8d982230
2 changed files with 16 additions and 0 deletions
|
|
@ -1,3 +1,4 @@
|
|||
// Package handlers provides HTTP request handlers for the API.
|
||||
package handlers
|
||||
|
||||
import (
|
||||
|
|
@ -8,8 +9,11 @@ import (
|
|||
"github.com/imc-vibe/backend/internal/auth"
|
||||
)
|
||||
|
||||
// AuthContextKey is the key used to store auth context in gin.Context.
|
||||
const AuthContextKey = "auth"
|
||||
|
||||
// AuthMiddleware validates JWT tokens and sets up the auth context.
|
||||
// Returns 401 if the token is missing, invalid, or expired.
|
||||
func AuthMiddleware(jwtManager *auth.JWTManager) gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
authHeader := c.GetHeader("Authorization")
|
||||
|
|
@ -41,6 +45,8 @@ func AuthMiddleware(jwtManager *auth.JWTManager) gin.HandlerFunc {
|
|||
}
|
||||
}
|
||||
|
||||
// GetAuthContext retrieves the auth context from the gin.Context.
|
||||
// Returns nil if the context is not set (auth middleware was not used).
|
||||
func GetAuthContext(c *gin.Context) *auth.Context {
|
||||
if ctx, exists := c.Get(AuthContextKey); exists {
|
||||
if authCtx, ok := ctx.(*auth.Context); ok {
|
||||
|
|
@ -50,6 +56,8 @@ func GetAuthContext(c *gin.Context) *auth.Context {
|
|||
return nil
|
||||
}
|
||||
|
||||
// RequireAdmin is a middleware that checks if the current user is an admin.
|
||||
// Returns 403 Forbidden if the user is not an admin.
|
||||
func RequireAdmin() gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
authCtx := GetAuthContext(c)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue