diff --git a/Elecciones-Web/src/Elecciones.Worker/Program.cs b/Elecciones-Web/src/Elecciones.Worker/Program.cs index 117867d..65d2da6 100644 --- a/Elecciones-Web/src/Elecciones.Worker/Program.cs +++ b/Elecciones-Web/src/Elecciones.Worker/Program.cs @@ -32,7 +32,6 @@ builder.Services.AddDbContext(options => #if DEBUG builder.Services.AddSingleton(); #else -// --- SECCIÓN MODIFICADA (FINAL) --- builder.Services.AddHttpClient("ElectoralApiClient", client => { var baseUrl = builder.Configuration["ElectoralApi:BaseUrl"]; @@ -40,6 +39,11 @@ builder.Services.AddHttpClient("ElectoralApiClient", client => { client.BaseAddress = new Uri(baseUrl); } + + // Limpiamos headers por defecto y añadimos uno que simula ser un navegador moderno. + // Esto es crucial para pasar a través de WAFs (Web Application Firewalls). + client.DefaultRequestHeaders.Clear(); + client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"); }) .ConfigurePrimaryHttpMessageHandler(() => { diff --git a/docker-compose.yml b/docker-compose.yml index c12bf74..c9e0fee 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -24,6 +24,7 @@ services: - ./.env networks: - shared-net # Solo necesita acceso a la DB y a la API electoral (internet). + entrypoint: ["sh", "-c", "printenv | grep ElectoralApi"] # No se exponen puertos. # Servicio del Frontend (servido por Nginx) @@ -59,7 +60,6 @@ networks: elecciones-net: driver: bridge - # Asumimos que la red 'shared-net' ya existe en Docker. - # Para crearla manualmente: docker network create shared-net + # La red 'shared-net' ya existe en Docker. shared-net: external: true \ No newline at end of file