CreepURL / backend /middleware /middleware.go
dipan004's picture
Update backend/middleware/middleware.go
ec96cbb verified
Raw
History Blame Contribute Delete
1.01 kB
package middleware
import (
"log"
"os"
"time"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/cors"
"github.com/gofiber/fiber/v2/middleware/recover"
)
func SetupMiddleware(app *fiber.App) {
app.Use(recover.New())
// Read allowed origins from env — set ALLOWED_ORIGINS on HuggingFace to your Render frontend URL
// e.g. ALLOWED_ORIGINS=https://creepurl.onrender.com
// Defaults to * (all origins) so it works out of the box
allowedOrigins := os.Getenv("ALLOWED_ORIGINS")
if allowedOrigins == "" {
allowedOrigins = "*"
}
app.Use(cors.New(cors.Config{
AllowOrigins: allowedOrigins,
AllowMethods: "GET,POST,OPTIONS",
AllowHeaders: "Content-Type,Authorization,Accept",
MaxAge: 300,
}))
app.Use(requestLogger)
}
func requestLogger(c *fiber.Ctx) error {
start := time.Now()
err := c.Next()
duration := time.Since(start)
log.Printf("[%s] %s %s — %d (%s)",
c.Method(),
c.Path(),
c.IP(),
c.Response().StatusCode(),
duration,
)
return err
}