Я создал REST API и загрузил его в Google Cloud.Когда я пытаюсь получить доступ из другого домена, он выдает следующую ошибку:
Запрос перекрестного источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на http://35.198.15.248:8080/api/clientes/pf/. (Причина: запрос CORS не выполненуспешно).
Затем я добавил следующий класс:
@Configuration
@EnableWebMvc
public class ConfiguracaoDeCors extends WebMvcConfigurerAdapter {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("POST, GET, HEAD, DELETE, UPDATE")
.allowedHeaders("Content-Type", "Authorization")
.allowCredentials(false)
.maxAge(32400);
}
}
И ошибка продолжается.Может ли кто-нибудь помочь?
ADD:
Работает
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.cors()
.and()
.csrf().disable()
.authorizeRequests()
.antMatchers(PUBLICOS).permitAll()
.anyRequest().authenticated()
.and()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
}
@Bean
public CorsConfigurationSource corsConfigurationSource() {
CorsConfiguration configuration = new CorsConfiguration();
configuration.setAllowedOrigins(Arrays.asList("*"));
configuration.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"));
configuration.setAllowedHeaders(Arrays.asList("authorization", "content-type", "x-auth-token"));
configuration.setExposedHeaders(Arrays.asList("x-auth-token"));
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", configuration);
return source;
}