Bah mon problème à l'heure actuelle, c'est un problème de CORS, quand j'essaye de lancer une requête http du front vers le backend, je reçois ce message d'erreur dans la console du navigateur " Failed to load http://localhost/customer/allCustomers: Request header field Access-Control-Allow-Origin is not allowed by Access-Control-Allow-Headers in preflight response."
D'après plusieurs sources sur le net avec Spring 5, il suffirait juste que la classe de configuration implémente l'interface WebMvcConfigurer mais ça ne fonctionne pas non plus 
Le frontend est sur le port 8081 et le backend est sur le prot 8080 
Voilà le code de configuration Spring Boot:
Si vous préférez, je peux mettre tout le code sur un repository si ça vous aide à mieux analyser le projet 
package com.moujib.storebackend.configuration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class CORSFilter implements Filter
{
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, remember-me, authorization");
if("OPTIONS".equalsIgnoreCase(request.getMethod()))
{
response.setStatus(HttpServletResponse.SC_OK);
}else
{
chain.doFilter(req, res);
}
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
@Configuration
@EnableWebMvc
public class WebConfiguration extends WebMvcConfigurerAdapter
{
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/*").allowedOrigins("http://localhost:8081").allowedHeaders("*");
}
}
@Configuration
public class RestConfig
{
@Bean
public CorsFilter corsFilter(){
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration conf = new CorsConfiguration();
conf.addAllowedHeader("*");
conf.addAllowedOrigin("*");
conf.addAllowedMethod("OPTIONS");
conf.addAllowedMethod("GET");
conf.addAllowedMethod("POST");
conf.addAllowedMethod("PUT");
conf.addAllowedMethod("DELETE");
conf.addAllowedMethod("OPTIONS");
conf.setAllowCredentials(true);
source.registerCorsConfiguration("/**", conf);
return new CorsFilter(source);
}
}
}