Skip to content

clmtdq/Axum-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Axum_Course

Mini API HTTP en Rust avec Axum, construite pour pratiquer les bases :

  • routing
  • extraction de paramètres de route
  • réponses JSON
  • gestion d'erreurs personnalisée
  • arrêt propre du serveur (CTRL+C)

Stack

Lancer le projet

cargo run

Serveur démarré sur :

127.0.0.1:3000

Endpoints

GET /

Retourne un message simple.

Exemple de réponse :

Hello World

GET /health_check

Retourne l'état du serveur.

Exemple de réponse :

{
  "status": "ok",
  "message": "Server is running"
}

GET /users/{id}

Recherche un utilisateur dans src/users.json.

  • id = 0 -> 400 Bad Request
  • id inexistant -> 404 Not Found
  • erreur lecture/parsing -> 500 Internal Server Error

Exemple :

curl http://127.0.0.1:3000/users/1

Réponse :

id: 1 | name : "admin"

GET /users/

Route présente mais actuellement non implémentée (retourne une erreur interne).

Données

Le fichier d'exemple est :

  • src/users.json

Contenu actuel :

[
  { "id": 1, "name": "admin" },
  { "id": 2, "name": "Mega" }
]

Structure

.
├── Cargo.toml
├── README.md
└── src
    ├── main.rs
    └── users.json

Pistes d'amélioration

  • implémenter GET /users/ pour retourner toute la liste
  • uniformiser les réponses (JSON partout)
  • ajouter des tests d'intégration
  • brancher un vrai stockage (DB)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages