-
Installation des dépendances :
- Installation de Node.js et du module Redis via npm.
- Configuration de l'environnement de développement.
-
Création du serveur Express :
- Mise en place d'un serveur HTTP avec Express pour gérer les requêtes.
- Connexion à l'instance Redis à l'aide du client Redis.
-
Définition des routes :
- Création de routes pour effectuer des opérations CRUD sur les voitures, les fonctionnalités et les descriptions de voitures :
POST /cars
: Ajouter une voiture.GET /cars
: Récupérer toutes les voitures.DELETE /cars
: Supprimer une voiture.POST /features
: Ajouter une fonctionnalité.GET /features
: Récupérer toutes les fonctionnalités.DELETE /features
: Supprimer une fonctionnalité.POST /cardescriptions
: Ajouter une description de voiture.GET /cardescriptions/:id
: Récupérer une description de voiture par ID.DELETE /cardescriptions/:id
: Supprimer une description de voiture par ID.
- Création de routes pour effectuer des opérations CRUD sur les voitures, les fonctionnalités et les descriptions de voitures :
-
Tests des fonctionnalités :
- Utilisation de Postman pour tester les différentes routes de l'application.
- Méthode :
POST
- URL :
http://localhost:3000/cars
- Corps de la requête (JSON) :
{ "car": "ford-mustang" }
- Méthode :
GET
- URL :
http://localhost:3000/cars
- Méthode :
DELETE
- URL :
http://localhost:3000/cars
- Corps de la requête (JSON) :
{ "car": "ford-mustang" }
- Méthode :
POST
- URL :
http://localhost:3000/features
- Corps de la requête (JSON) :
{ "feature": "climate-control" }
- Méthode :
GET
- URL :
http://localhost:3000/features
- Méthode :
DELETE
- URL :
http://localhost:3000/features
- Corps de la requête (JSON) :
{ "feature": "climate-control" }
- Méthode :
POST
- URL :
http://localhost:3000/cardescriptions
- Corps de la requête (JSON) :
{ "id": "cjhvatfuc00005mfj2zycewid", "description": { "make": "Ford", "model": "Mustang", "year": "2020" } }
- Méthode :
GET
- URL :
http://localhost:3000/cardescriptions/cjhvatfuc00005mfj2zycewid
- Méthode :
DELETE
- URL :
http://localhost:3000/cardescriptions/cjhvatfuc00005mfj2zycewid
-
Problèmes de connexion au client Redis : Initialement, le client Redis ne se connectait pas correctement, entraînant des erreurs lors des opérations CRUD.
-
Méthodes obsolètes : Certaines méthodes utilisées dans le code étaient incompatibles avec la version 4 de Redis. Cela nécessitait des modifications pour utiliser les méthodes appropriées, comme
client.hSet
au lieu declient.hmset
. -
Gestion des erreurs : La gestion des erreurs n'était pas correctement configurée, ce qui causait des plantages de l'application. J'ai dû ajouter des vérifications d'erreurs pour m'assurer que l'application reste stable.
-
Format des requêtes HTTP : Lors des tests avec
curl
et Postman, il y avait des problèmes de formatage des requêtes qui ont nécessité des ajustements.
Ce projet m'a permis d'acquérir une compréhension approfondie de la manière dont Redis fonctionne avec Node.js et de développer une application CRUD simple mais fonctionnelle. J'ai surmonté divers défis techniques, ce qui a enrichi mes compétences en développement web et en gestion des bases de données.