Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1K
Vistas
Cambio de política CORS en spring boot versión 2.4.0

Usando Spring 2.3.0.RELEASE, tuve la siguiente confirmación de CORS:

 @Configuration @EnableWebSecurity @ComponentScan("com.softeq.ems.config") @EnableGlobalMethodSecurity(prePostEnabled = true) public class EmsJwtSecurityConfig extends BaseSecurityConfig { @Value("${management.endpoints.web.cors.allowed-origins}") private String[] allowedOrigins; @Override protected void configureHttp(HttpSecurity http) throws Exception { if (allowedOrigins.length > 0) { http.cors().configurationSource(corsConfigSource()); } http.csrf().disable(); } private CorsConfigurationSource corsConfigSource() { final CorsConfiguration corsConfig = new CorsConfiguration(); corsConfig.addAllowedHeader(CorsConfiguration.ALL); corsConfig.addAllowedMethod(CorsConfiguration.ALL); Stream.of(allowedOrigins).forEach( origin -> corsConfig.addAllowedOrigin(origin) ); return request -> corsConfig; }

management.endpoints.web.cors.allowed-origins = http://localhost:4200, http://127.0.0.1:4200

Esta configuración funcionó bien y todas las solicitudes multiplataforma que necesitaba fueron autorizadas.

Pero después de migrar a spring-boot 2.4.0 después del lanzamiento, cuando intenté enviar una solicitud al host como de costumbre, recibí el clásico error de política cors en la consola del navegador Chrome:

 Access to XMLHttpRequest at 'http://localhost:8080/api/v1/me/balance' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status

Las notas de lanzamiento de Spring dicen que la configuración de cors proporciona una nueva propiedad allowedOriginPatterns , pero no entiendo cómo usarla: https://github.com/spring-projects/spring-framework/wiki/What%27s-New-in -Spring-Framework-5.x#revisión-web-general

¡Por favor, ayúdame a descubrir cuál es mi problema!

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Aquí lo que le haría a tu código:

 private CorsConfigurationSource corsConfigSource() { final CorsConfiguration corsConfig = new CorsConfiguration(); corsConfig.addAllowedHeader(CorsConfiguration.ALL); corsConfig.addAllowedMethod(CorsConfiguration.ALL); Stream.of(allowedOrigins).forEach( //origin -> corsConfig.addAllowedOrigin(origin) origin -> corsConfig.addAllowedOriginPattern(origin) ); return request -> corsConfig; }
over 4 years ago · Santiago Trujillo Denunciar

0

Lo hice así:

 @Configuration @Profile("!production") class CorsConfig : WebMvcConfigurer { override fun addCorsMappings(registry: CorsRegistry) { registry .addMapping("/**") .allowedOriginPatterns("http://localhost:3000") } }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda