From fb1f47c0c08286a1464461a17c212125dc17ff3e Mon Sep 17 00:00:00 2001 From: nyne Date: Sat, 6 Dec 2025 16:10:31 +0800 Subject: [PATCH] dev api --- server/api/dev.go | 14 ++++++++++++++ server/middleware/dev_middleware.go | 22 ++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 server/api/dev.go create mode 100644 server/middleware/dev_middleware.go diff --git a/server/api/dev.go b/server/api/dev.go new file mode 100644 index 0000000..367cabc --- /dev/null +++ b/server/api/dev.go @@ -0,0 +1,14 @@ +package api + +import ( + "nysoure/server/middleware" + + "github.com/gofiber/fiber/v3" +) + +func AddDevAPI(router fiber.Router) { + devGroup := router.Group("/dev") + { + devGroup.Use(middleware.DevMiddleware()) + } +} diff --git a/server/middleware/dev_middleware.go b/server/middleware/dev_middleware.go new file mode 100644 index 0000000..d86b58e --- /dev/null +++ b/server/middleware/dev_middleware.go @@ -0,0 +1,22 @@ +package middleware + +import ( + "nysoure/server/model" + "os" + + "github.com/gofiber/fiber/v3" +) + +func DevMiddleware() func(c fiber.Ctx) error { + AccessKey := os.Getenv("DEV_ACCESS_KEY") + return func(c fiber.Ctx) error { + if AccessKey == "" { + return model.NewUnAuthorizedError("Unauthorized") + } + providedKey := c.Get("X-DEV-ACCESS-KEY") + if providedKey != AccessKey { + return model.NewUnAuthorizedError("Unauthorized") + } + return c.Next() + } +}