Voici une vitrine très basique pour l'autorisation de jeton de porteur jwt, utilisant angulaire comme frontal et ASP.NET Core comme backend. ASP.NET Core3.1 angulaire 7.2.1 avec systemjs. (Assurez-vous que dotnet core 3.1 + et Angular7.2.1 sont installés)
(Pourquoi systemjs pas webpack ? Avis personnel : webpack tout simplement trop compliqué à utiliser pour une application simple et de petite taille, j'ai plutôt scarifié l'efficacité pour permettre à la plupart des programmeurs de lire mon exemple de code)
Vous pouvez maintenant arrêter Google et découvrir comment effectuer l'authentification par jeton JWT, c'est simple !
Au niveau du backend : MS$ fournit le middleware AddAuthentication().AddJwtBearer() pour l'authentification du jeton Bear JWT, donc les choses s'avèrent aussi simples que d'ajouter le middleware sur Startup.cs
Au frontend (angulaire dans ce cas) : enregistrez le jeton dans sessionStorage et lorsque vous parlez au backend, définissez l'en-tête de la requête http (https pour la production) comme :
let headers = new HttpHeaders()
.set('Content-Type','application/json')
.set("Authorization", "Bearer " + token);
Angular & Material 7.2.1 dans ASP.NET Core 3.1 (version VS2019 ou csproj) avec solution JWT.
S'assurer:
ASP.NET CORE 3.1 a été installé, sinon, téléchargez-le ici : https://www.microsoft.com/net/download/core
nodejs a été installé, sinon, récupérez-le depuis https://nodejs.org/en/download/
après avoir téléchargé ce référentiel, accédez au dossier contenant le fichier ASPNETCoreAngularJWT.csproj et exécutez la commande :
>dotnet restore
>npm install
>npm start
Enfin, démarrez dotnet et le navigateur http://localhost:5000 en
>dotnet run
Et n'oubliez pas d'exécuter "npm start" après avoir modifié les fichiers dactylographiés.
Vous pouvez l'exécuter pour la compilation angulaire et l'exécution dotnet
>npm run runall
Il peut également être ouvert par Visual Studio 2017 ou Visual Studio Code. Après avoir ouvert par VS2017 et avant d'exécuter en tant que débogage, assurez-vous que projet-> propriété -> Debug et App URL ="http://localhost:5000" et reconstruisez à nouveau avant de commencer le débogage