diff --git a/veza-backend-api/internal/api/router.go b/veza-backend-api/internal/api/router.go index 4adc5ed8e..671dc3151 100644 --- a/veza-backend-api/internal/api/router.go +++ b/veza-backend-api/internal/api/router.go @@ -220,10 +220,15 @@ func (r *APIRouter) Setup(router *gin.Engine) error { router.Use(middleware.Timeout(r.config.HandlerTimeout)) // Rate limiting via config.RateLimiter si disponible, sinon utiliser SimpleRateLimiter - if r.config != nil && r.config.RateLimiter != nil { - router.Use(r.config.RateLimiter.RateLimitMiddleware()) - } else if r.config != nil && r.config.SimpleRateLimiter != nil { - router.Use(r.config.SimpleRateLimiter.Middleware()) + // DÉSACTIVER en développement pour faciliter les tests + if r.config != nil && r.config.Env != config.EnvDevelopment { + if r.config.RateLimiter != nil { + router.Use(r.config.RateLimiter.RateLimitMiddleware()) + } else if r.config.SimpleRateLimiter != nil { + router.Use(r.config.SimpleRateLimiter.Middleware()) + } + } else { + r.logger.Info("Rate limiting disabled in development mode") } // Swagger Documentation diff --git a/veza-backend-api/internal/middleware/rate_limiter.go b/veza-backend-api/internal/middleware/rate_limiter.go index 20a93ce86..130801aeb 100644 --- a/veza-backend-api/internal/middleware/rate_limiter.go +++ b/veza-backend-api/internal/middleware/rate_limiter.go @@ -89,14 +89,16 @@ func (rl *RateLimiter) RateLimitMiddleware() gin.HandlerFunc { return } - // DÉSACTIVER le rate limiting en mode test/e2e pour les tests E2E + // DÉSACTIVER le rate limiting en mode test/e2e/development pour les tests E2E et développement // Vérifier via header ou variable d'environnement if c.GetHeader("X-Test-Mode") == "true" || c.GetHeader("X-E2E-Test") == "true" || os.Getenv("NODE_ENV") == "test" || os.Getenv("NODE_ENV") == "e2e" || + os.Getenv("NODE_ENV") == "development" || os.Getenv("APP_ENV") == "test" || - os.Getenv("APP_ENV") == "e2e" { + os.Getenv("APP_ENV") == "e2e" || + os.Getenv("APP_ENV") == "development" { c.Next() return } diff --git a/veza-backend-api/internal/middleware/ratelimit.go b/veza-backend-api/internal/middleware/ratelimit.go index 9a4ce7a5e..87fc0e1a0 100644 --- a/veza-backend-api/internal/middleware/ratelimit.go +++ b/veza-backend-api/internal/middleware/ratelimit.go @@ -75,13 +75,15 @@ func (rl *SimpleRateLimiter) Middleware() gin.HandlerFunc { return } - // DÉSACTIVER le rate limiting en mode test/e2e pour les tests E2E + // DÉSACTIVER le rate limiting en mode test/e2e/development pour les tests E2E et développement if c.GetHeader("X-Test-Mode") == "true" || c.GetHeader("X-E2E-Test") == "true" || os.Getenv("NODE_ENV") == "test" || os.Getenv("NODE_ENV") == "e2e" || + os.Getenv("NODE_ENV") == "development" || os.Getenv("APP_ENV") == "test" || - os.Getenv("APP_ENV") == "e2e" { + os.Getenv("APP_ENV") == "e2e" || + os.Getenv("APP_ENV") == "development" { c.Next() return }