Конфигурация Spring Boot cors позволяет использовать все источники - PullRequest
0 голосов
/ 11 марта 2019

Я пытаюсь сделать из моего веб-интерфейса только место из запроса в бэкэнд.Проблема в том, что это не работает, и каждый запрос вызывается.Ниже приведен код, который настраивает Spring Security и cors.

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http.cors().and().csrf().disable().authorizeRequests()
                .antMatchers(HttpMethod.POST, SIGN_UP_URL).permitAll()
                .antMatchers(HttpMethod.GET, "/groups").permitAll()
                .antMatchers("/").permitAll()
                .anyRequest().authenticated()
                .and()
                .addFilter(new JWTAuthenticationFilter(authenticationManager()))
                .addFilter(new JWTAuthorizationFilter(authenticationManager()))
                .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
    }

@Bean
    CorsConfigurationSource corsConfigurationSource() {
        CorsConfiguration configuration = new CorsConfiguration();
        configuration.setAllowedOrigins(Arrays.asList("http://192.168.0.16:8080"));
        configuration.setAllowedMethods(Arrays.asList("GET", "POST"));
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", configuration);
        return source;
    }

1 Ответ

0 голосов
/ 11 марта 2019

Возможно, вы захотите добавить OPTIONS http метод к CORS разрешенным методам. Большинство языков интерфейса перед отправкой реального отправили запрос OPTIONS. Что-то вроде

configuration.setAllowedMethods(Arrays.asList("GET", "POST", "OPTIONS"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...