Solución multidominio de Springboot para tres métodos

¿Qué es dominio cruzado?

Cross-domain significa que el navegador no puede ejecutar scripts de otros sitios web. Es causado por la política del mismo origen del navegador, una restricción de seguridad impuesta por el navegador.
La llamada homología significa que el nombre de dominio, el protocolo y el puerto son los mismos, siempre que haya una diferencia, es entre dominios.

3 soluciones para soluciones de dominio cruzado en proyectos Spring Boot

1. Anotación @CrossOrigin

Agregue la anotación @CrossOrigin a la clase de controlador

@CrossOrigin
public class GoodsController {
    
    

}  

2. Añadir filtro CORS

@Configuration
public class CorsConfig {
    
    
    
    @Bean
    public CorsFilter corsFilter(){
    
    
        CorsConfiguration corsConfiguration = new CorsConfiguration();
        corsConfiguration.addAllowedOrigin("*");
        corsConfiguration.addAllowedHeader("*");
        corsConfiguration.addAllowedMethod("*");
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", corsConfiguration);
        return new CorsFilter(source);
    }
    
}

3. Implemente la interfaz WebMvcConfigurer y reescriba el método addCorsMappings

@Configuration
public class CorsConfiguration implements WebMvcConfigurer {
    
    

    @Override
    public void addCorsMappings(CorsRegistry registry) {
    
    
        registry.addMapping("/**")
                .allowedOriginPatterns("*")
                .allowedMethods("GET","POST","PUT","DELETE","HEAD","OPTIONS")
                .allowCredentials(true)
                .maxAge(3600)
                .allowedHeaders("*");
    }
}

Supongo que te gusta

Origin blog.csdn.net/qq_44866153/article/details/123403282
Recomendado
Clasificación