2017-06-16 4 views
1

am débutant à 2 angulaire, essaie de chercher une liste de mon serveur en utilisant http GET demande ...Non « Access-Control-Allow-Origin » Problème lors du déploiement

navigateur lancé cette erreur XMLHttpRequest ne peut pas charger http://localhost:8080/student/list. Aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la ressource demandée. L'origine 'http://localhost:4200' n'est donc pas autorisée. student.service.ts: 48 0 - { "isTrusted": true}

I googlé et ajoutée allow-contrôle permet origine https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi tout fonctionne bien ..

Sans que j'ai ajouté la ligne suivante dans serve.js mais sans en-tête utilisé : { 'Access-Control-Allow-Origin': '*'},

Mais comment faire ce travail sans raccourci ci-dessus ..

Merci à Advance

+0

ce n'est pas un raccourci, voici comment vous devriez le faire. – Supamiu

+0

Mais je ne peux pas dire à mes clients d'ajouter le plugin en chrome à droite ??? Je parle après le déploiement –

+0

oh oui, vous devez ajouter l'en-tête dans votre serveur, je n'ai pas vu la partie sur le plugin chrome, cela doit être géré sur le côté serveur, ce n'est pas un problème angulaire .. – Supamiu

Répondre

2

Le CORS est une fonctionnalité de sécurité des navigateurs, ce n'est pas un bug pour se déplacer, mais quelque chose que vous devez respecter.

Lors du déploiement, vous pouvez servir à la fois votre SPA Angular et votre backend à partir de la même origine (par exemple en utilisant un proxy inverse) ou vous devez configurer les en-têtes CORS pour votre backend.