fix: blocklist for route

This commit is contained in:
Jonas Kaninda
2024-10-28 10:10:53 +01:00
parent f7bd658ddf
commit 934477fe80

View File

@@ -34,8 +34,6 @@ func (gatewayServer GatewayServer) Initialize() *mux.Router {
// Define the health check route // Define the health check route
r.HandleFunc("/healthz", heath.HealthCheckHandler).Methods("GET") r.HandleFunc("/healthz", heath.HealthCheckHandler).Methods("GET")
r.HandleFunc("/readyz", heath.HealthReadyHandler).Methods("GET") r.HandleFunc("/readyz", heath.HealthReadyHandler).Methods("GET")
// Apply global Cors middlewares
r.Use(CORSHandler(gateway.Cors)) // Apply CORS middleware
if gateway.RateLimiter != 0 { if gateway.RateLimiter != 0 {
//rateLimiter := middleware.NewRateLimiter(gateway.RateLimiter, time.Minute) //rateLimiter := middleware.NewRateLimiter(gateway.RateLimiter, time.Minute)
limiter := middleware.NewRateLimiterWindow(gateway.RateLimiter, time.Minute) // requests per minute limiter := middleware.NewRateLimiterWindow(gateway.RateLimiter, time.Minute) // requests per minute
@@ -48,8 +46,6 @@ func (gatewayServer GatewayServer) Initialize() *mux.Router {
Path: route.Path, Path: route.Path,
List: route.Blocklist, List: route.Blocklist,
} }
// Add block access middleware to all route, if defined
r.Use(blM.BlocklistMiddleware)
// Apply route middleware // Apply route middleware
for _, mid := range route.Middlewares { for _, mid := range route.Middlewares {
if mid.Path != "" { if mid.Path != "" {
@@ -121,7 +117,10 @@ func (gatewayServer GatewayServer) Initialize() *mux.Router {
cors: route.Cors, cors: route.Cors,
} }
router := r.PathPrefix(route.Path).Subrouter() router := r.PathPrefix(route.Path).Subrouter()
// Apply route Cors
router.Use(CORSHandler(route.Cors)) router.Use(CORSHandler(route.Cors))
// Add block access middleware to route, if defined
router.Use(blM.BlocklistMiddleware)
//Domain/host based request routing //Domain/host based request routing
if route.Host != "" { if route.Host != "" {
router.Host(route.Host).PathPrefix("").Handler(proxyRoute.ProxyHandler()) router.Host(route.Host).PathPrefix("").Handler(proxyRoute.ProxyHandler())
@@ -133,6 +132,8 @@ func (gatewayServer GatewayServer) Initialize() *mux.Router {
logger.Info("Route path ignored: %s", route.Path) logger.Info("Route path ignored: %s", route.Path)
} }
} }
// Apply global Cors middlewares
r.Use(CORSHandler(gateway.Cors)) // Apply CORS middleware
return r return r
} }