Olá, Michael!
Pelo que você descreveu, parece que você está enfrentando um problema comum relacionado ao CORS (Cross-Origin Resource Sharing). Isso geralmente ocorre quando você tenta fazer uma requisição de um domínio (ou porta) para outro, o que é comum em aplicações web modernas.
No Spring Boot, você pode resolver esse problema adicionando uma configuração global de CORS. Aqui está um exemplo de como você pode fazer isso:
@Configuration
public class MyConfiguration {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS")
.allowedHeaders("*")
.allowCredentials(true);
}
};
}
}
Neste exemplo, estamos permitindo requisições CORS de qualquer origem (allowedOrigins("*")
) para qualquer endpoint (addMapping("/**")
) e qualquer tipo de requisição HTTP (allowedMethods("GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS")
). Além disso, estamos permitindo todos os headers (allowedHeaders("*")
) e credenciais (allowCredentials(true)
).
Por favor, substitua os valores de acordo com as necessidades da sua aplicação. Por exemplo, é uma boa prática restringir as origens permitidas para apenas as que realmente precisam acessar sua API.
Lembre-se de reiniciar sua aplicação depois de fazer essas alterações para que elas tenham efeito.
Espero ter ajudado e bons estudos!