스프링 오아시스 2를 사용하는 스프링 부트 앱이 완벽하게 작동합니다. 메인 클래스에서 @EnableResourceServer를 사용하면 잘 작동합니다. 나는 그것이 토큰 OAuth를 함께 확인하지 않습니다 요청을 보인다 클래스를 추가 한 후 서비스에 대한 CORS를 사용하도록 설정하지만 클래스WebSecurityConfigurerAdapter가 EnableResourceServer를 재정의 하시겠습니까?
@Configuration
public class CorsConfiguration extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.csrf().disable();
http.cors();
}
@Bean
public CorsConfigurationSource corsConfigurationSource() {
final org.springframework.web.cors.CorsConfiguration configuration = new org.springframework.web.cors.CorsConfiguration();
configuration.setAllowedOrigins(ImmutableList.of("*"));
configuration.setAllowedMethods(ImmutableList.of("HEAD",
"GET", "POST", "PUT", "DELETE", "PATCH"));
configuration.setAllowCredentials(true);
configuration.setAllowedHeaders(ImmutableList.of("Authorization", "Cache-Control", "Content-Type"));
final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", configuration);
return source;
}
}
이하로 구현했습니다. oAuth 토큰 없이도 모든 요청은 서비스에 액세스 할 수 있습니다.
내가 뭘 잘못 했니? 두 가지 모두 사용합니까? 둘 다 일하기 위해 특별한 일이 있습니까? CORS를 활성화하는 더 좋은 방법이 있습니다. (내가 시도한 @CrossOrigin 주석이 작동하지 않았다.)