Controllers | ||
Database | ||
Properties | ||
.gitignore | ||
appsettings.Development.json | ||
appsettings.json | ||
HubHarmony_api_template.sln | ||
Middlewares.cs | ||
Program.cs | ||
README.md | ||
Simple API.csproj | ||
Simple API.http |
Template d'API .NET avec Authentification JWT 🚀
Présentation
Cette API simple est construite avec ASP.NET Core et permet de gérer diverses routes et protocoles. Elle inclut un système d'authentification basé sur les JSON Web Tokens (JWT) pour sécuriser les requêtes. 🔐
Fonctionnalités
- API RESTful : Prend en charge les méthodes HTTP standards (GET, POST, PUT, DELETE). 🌐
- Authentification JWT : Sécurisez vos points de terminaison API avec des jetons JWT. 🛡️
- Gestion des Routes : Facilité de gestion et de définition des routes pour votre application. 📍
- Support Multi-Protocole : Gère plusieurs protocoles pour la flexibilité des requêtes. 🔄
Installation
Prérequis
- .NET SDK (version 8.0 ou supérieure) 💻
- Visual Studio ou JetBrains Rider pour le développement 🛠️
- MySQL Server pour la base de données 💾
Forker le projet
-
Forker le dépôt :
- Allez sur la page du projet sur GitHub et cliquez sur le bouton Fork en haut à droite pour créer votre propre copie du projet.
-
Cloner votre fork :
- Ouvrez votre terminal et exécutez la commande suivante :
git clone https://github.com/votre-utilisateur/votre-repo.git cd votre-repo
- Ouvrez votre terminal et exécutez la commande suivante :
-
Installer les dépendances :
dotnet restore
Configurer votre base de données MySQL
-
Créer une base de données MySQL :
- Utilisez un outil comme MySQL Workbench ou un terminal pour créer une nouvelle base de données.
-
Modifier la chaîne de connexion :
- Ouvrez le fichier
appsettings.json
dans votre projet et modifiez la sectionConnectionStrings
pour y inclure vos informations de connexion :{ "ConnectionStrings": { "DATABASE": "Server=localhost;Database=nom_de_votre_base;User=utilisateur;Password=motdepasse;" } }
- Ouvrez le fichier
Utilisation
Lancer l'API
Pour démarrer l'application, exécutez la commande suivante :
dotnet run
L'API sera accessible à l'adresse http://localhost:5000
.
Authentification JWT
-
Inscription d'un utilisateur :
- Endpoint :
POST /api/signup
- Corps de la requête :
{ "username": "votreNom", "password": "votreMotDePasse" }
- Endpoint :
-
Connexion d'un utilisateur :
- Endpoint :
POST /api/login
- Corps de la requête :
{ "username": "votreNom", "password": "votreMotDePasse" }
- Réponse :
{ "token": "votreJWT" }
- Endpoint :
-
Accéder aux données sécurisées :
- Endpoint :
GET /api/data
- En-tête de la requête :
Authorization: Bearer votreJWT
- Endpoint :
Exemples de Requêtes
Inscription d'un utilisateur
curl -X POST http://localhost:5000/api/signup \
-H "Content-Type: application/json" \
-d '{"username": "testuser", "password": "testpass"}'
Connexion d'un utilisateur
curl -X POST http://localhost:5000/api/login \
-H "Content-Type: application/json" \
-d '{"username": "testuser", "password": "testpass"}'
Accéder aux données sécurisées
curl -X GET http://localhost:5000/api/data \
-H "Authorization: Bearer votreJWT"
Conclusion 🎉
Cette API simple vous permet de gérer efficacement des requêtes tout en garantissant la sécurité grâce à l'authentification JWT. N'hésitez pas à personnaliser et à étendre cette API selon vos besoins !
Aide et Support
Pour toute question ou problème, ouvrez une issue sur le dépôt GitHub. 📬