两种解决springboot 跨域问题的方法示例

两种解决springboot 跨域问题的方法示例,哪种方法看情况而定,自己选择。社会Boolean哥,人狠话不多,直接上代码。

第一种实现方式:
       此种方式做全局配置,用起来更方便,但是无法做到具体问题具体处理。具体做法就是直接加入跨域的配置类。

注意要用到@Configuration将此bean注入spring容器,否则不起作用。

/**
 * 全局跨域处理
 * @author Boolean
 *
 */
@Configuration
public class CorsConfig {
    private CorsConfiguration buildConfig() {  
        CorsConfiguration corsConfiguration = new CorsConfiguration();  
        corsConfiguration.addAllowedOrigin("*"); // 1允许任何域名使用
        //corsConfiguration.addAllowedOrigin("http://www.test.com"); // 1允许特定域名使用
        corsConfiguration.addAllowedHeader("*"); // 2允许任何头
        corsConfiguration.addAllowedMethod("*"); // 3允许任何方法(post、get等) 
        return corsConfiguration;  
    }  
  
    @Bean  
    public CorsFilter corsFilter() {  
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();  
        source.registerCorsConfiguration("/**", buildConfig()); // 4  
        return new CorsFilter(source);  
    } 
}


第二种实现方式:
     此方式更准确,但是相对来说较为麻烦。具体做法就是在每个需要跨域的接口上使用@CrossOrigin注解。

@CrossOrigin(allowCredentials = "true", allowedHeaders = "*", origins = "*")

allowCredentials(true):允许跨域cookie等用户凭证传递(默认为false)
---------------------
作者:Boolean先森
来源:CSDN
原文:https://blog.csdn.net/bebmwnz/article/details/90168367
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/pztc/p/10855475.html