Dans notre application Angular d’affichage de nos disponibilités, nous appelons une API asp.net core. Or un message dans la console nous informe d’une erreur CORS.
Comment alors autoriser l’appel de l’API depuis notre application Angular ?
Paramétrer l’appel Cors dans le Sartup
Dans votre Startup.cs, vous allez paramétrer en deux étapes l’appel et l’utilisation des droits Cross-Origin Resource Sharing.
Premier étape : UseCors()
Pour plus de détails jeter un œil ici :
https://gist.github.com/evan-boissonnot/96d3690adc971e2e169f5828990e3944.
Affiner l’autorisation de certaines urls
Si vous souhaitez affiner la sécurité et n’autoriser que certaines urls, vous devez utilisez l’option : AllowSpecificOrigin.
Voir le détail ici :
https://gist.github.com/evan-boissonnot/d624ae4dc4fb45db822df48ae3fe9cd8
Seconde étape : AddCors()
Vous pouvez alors paramétrer votre service avec services.AddCors().
NOTE: si vous avez précisé le AllowSpecificOrigin, vous pouvez configurer les urls autorisées :
Pour plus de détails : https://gist.github.com/evan-boissonnot/640456d16324816c031a82d4a8f96f58
Vous pouvez aller plus loin dans la définition des autorisations CORS : préciser les méthodes, préciser les entêtes, …
Définition par Action
Vous pouvez aussi, en attribut de chaque méthode définir les autorisation Cors :
[EnableCors(« AllowSpecificOrigin »)]