如何在Spring Boot + Spring Security应用程序中配置CORS

2025-06-21 06:31:28
推荐回答(1个)
回答1:

由于Spring Security是基于过滤器的安全框架,目前没有办法知道在请求处理链中的Spring MVC级别发生的CORS配置和处理,因此例如预检CORS请求被阻止。

你可以配置Spring Security以通过指定 .requestMatchers(CorsUtils :: isPreFlightRequest).permitAll()来允许 WebSecurityConfigurerAdapter#configure(HttpSecurity) code>但这种方法有两个缺点:

Spring Security本身处理的请求CORS响应标头,并且将被浏览器阻止,但不允许您获取错误状态代码

通过允许 OPTIONS 有CORS标头的请求