code refactor, added middleware,

This commit is contained in:
2025-01-28 15:26:22 +01:00
parent 52aa874f8f
commit f7efee56f0
10 changed files with 133 additions and 66 deletions

24
middleware/protected.go Normal file
View File

@@ -0,0 +1,24 @@
package middleware
import (
jwtware "github.com/gofiber/contrib/jwt"
"github.com/gofiber/fiber/v2"
"os"
)
func Protected() fiber.Handler {
return jwtware.New(jwtware.Config{
SigningKey: jwtware.SigningKey{Key: []byte(os.Getenv("JWT_SECRET"))},
ErrorHandler: jwtError,
TokenLookup: "cookie:token",
})
}
func jwtError(c *fiber.Ctx, err error) error {
if err.Error() == "Missing or malformed JWT" {
return c.Status(fiber.StatusBadRequest).
JSON(fiber.Map{"error": "Missing or malformed token"})
}
return c.Status(fiber.StatusUnauthorized).
JSON(fiber.Map{"error": "Invalid or expired token"})
}