43 lines
1.0 KiB
Go
43 lines
1.0 KiB
Go
package router
|
|
|
|
import (
|
|
"git.umbach.dev/app-idea/rest-api/routers/api/v1/user"
|
|
|
|
jwt "github.com/form3tech-oss/jwt-go"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
/*
|
|
func Protected() fiber.Handler {
|
|
return jwtware.New(jwtware.Config{
|
|
SigningKey: []byte(config.GetConfig().Server.Secret),
|
|
ErrorHandler: jwtError,
|
|
})
|
|
}
|
|
|
|
func jwtError(c *fiber.Ctx, err error) error {
|
|
if err.Error() == "Missing or malformed JWT" {
|
|
return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"message": "Missing or malformed JWT"})
|
|
}
|
|
return c.Status(fiber.StatusUnauthorized).JSON(fiber.Map{"message": "Invalid or expired JWT"})
|
|
} */
|
|
|
|
func Test(c *fiber.Ctx) error {
|
|
usert := c.Locals("user").(*jwt.Token)
|
|
claims := usert.Claims.(jwt.MapClaims)
|
|
name := claims["username"].(string)
|
|
return c.SendString("Welcome" + name)
|
|
}
|
|
|
|
func SetupRoutes(app *fiber.App) {
|
|
api := app.Group("/api/v1")
|
|
|
|
/* Unauthenticated routes */
|
|
|
|
app.Get("/user", user.GetUser)
|
|
|
|
users := api.Group("/users")
|
|
users.Post("/", user.NewUser)
|
|
users.Get("/", user.SessionIdCheck, user.GetUsers)
|
|
}
|