43 votes

L'origine "http://localhost:4200" a été bloquée par la politique CORS dans Angular7.

Je veux utiliser de http://5.160.2.148:8091/api/trainTicketing/city/findAll repos pour obtenir des villes dans mon projet angulaire.
J'ai utilisé la version 7.2.15 d'angular dans mon projet.
Lorsque vous obtenez cette url avec httpClient, vous obtenez l'erreur suivante :

 Access to XMLHttpRequest at 'http://5.160.2.148:8091/api/trainTicketing/city/findAll' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Alors qu'au travail correctement quand entrer url dans le navigateur et postman.

Pourquoi ?

0voto

subhashis Points 686

Créez une classe et ajoutez la configuration ci-dessous dans l'application spring boot.

    package com.myapp.springboot.configs;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.config.annotation.CorsRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

    @Configuration
    public class WebMvcConfiguration implements WebMvcConfigurer {
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/*").
            allowedOrigins("*").
            allowedMethods("*").
            allowedHeaders("*").
            allowCredentials(true);
        }
    }

0voto

Jasper Points 1

Il existe de nombreuses façons de gérer le problème des COR dans Spring Boot. La méthode la plus simple consiste à ajouter l'annotation @CrossOrigin au contrôleur, par exemple dans votre fichier java ..resource. Essayez

@CrossOrigin(origins= {"*"}, maxAge = 4800, allowCredentials = "false" @RestController

Pour plus d'informations, consultez la documentation de Spring Boot CORs. Merci.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X