Vous êtes sur la page 1sur 10

Développement du Back-End du site Vieux-Grimoire

Introduction

Dans cette présentation, nous allons explorer


l'évolution du back-end du site Vieux-Grimoire.
Rappelons les besoins du projet :

1. Inscription à un espace utilisateur


2. Connection à son espace
3. Ajout de livres
4. Modification / Suppresion des livres
5. Attribuer une note à un livre
6. Retourner les 3 livres les mieux notés
Architecture du back-end

NodeJs permet une


exécution côté serveur
rapide et efficace.
ExpressJS permet le
création des routes et des
middlewares de l'API.
MongoDB est utilisé comme
base de données NoSQL
pour stocker les données.
Mise en place de NodeJs et
ExpressJs
On crée un serveur web avec Express.js, un
framework pour Node.js.
Le serveur web se connecte à une base de
données MongoDB, définit des routes pour les
livres et les utilisateurs, et utilise le middleware
`express.static()` pour servir des fichiers
statiques.
Le serveur web définit des en-têtes CORS pour
éviter les erreurs de sécurité liées à l'accès à des
ressources provenant d'un autre domaine.
Intégration avec MongoDB
L'intégration avec MongoDB est
essentielle pour stocker et récupérer
les données des livres.
Nous utilisons Mongoose, une
bibliothèque d'objets de modélisation
pour NodeJs, qui facilite les opérations
CRUD avec la base de données
MongoDB.

Cela nous permet de stocker les


détails des livres, y compris les images
de couverture et les informations,
ainsi que les notes des utilisateurs,
dans un "model" bien défini et
utilisable par le front-end & le back-
end.
Création d'une API
La création d'une API permet
d'ajouter des livres et de les noter
facilement, via le front-end du site.
Nous utilisons ExpressJS pour définir
les routes et les contrôleurs
nécessaires.
Les utilisateurs ont accès aux livres via
les requêtes HTTP GET de l'API, qui
renvoient un seul ou l'ensemble des
livres.
Les utilisateurs peuvent ajouter des
livres ou les modifier en fournissant
les informations requises via des
requêtes HTTP POST.
De plus, ils peuvent également noter
les livres existants en utilisant des
requêtes HTTP PUT.
Le comportement de l'API est géré
dans le dossier "controllers" du back-
end.
Sécurisation des données utilisateurs

La sécurisation des données utilisateurs est


primordiale. Nous utilisons des techniques telles
que le hashage des mots de passe avec
BCrypt et l'utilisation de jetons
d'authentification avec JsonWebToken dans un
middleware "Auth" pour garantir la
confidentialité et l'intégrité des données.

On utilise également `dotenv` pour masquer les


informations sensibles telles que les identifiants
de connexion à la base de données.
Gestion de la notation des
livres

Lorsque l'utilisateur est connecté à son


espace, nous gérons la notation des livres
en mettant à jour la notation du livre en
question et en actualisant la liste des 3
livres les mieux notés.
Cette fonctionnalité permet aux
utilisateurs de suivre et de contribuer aux
évaluations des livres de manière
efficace.
Gestion des images et Green IT

Multer est utilisé pour capturer et compresser


les images envoyées depuis le front-end, afin
de réduire leur poids et de promouvoir une
approche plus écologique (Green IT). Cela
permet d'améliorer les performances du site
tout en minimisant l'impact environnemental.
Conclusion
L'évolution du back-end du site Vieux-Grimoire avec NodeJs,
ExpressJS et MongoDB a permis d'améliorer la sécurité, la gestion
des données utilisateurs et la création d'une API pour l'ajout de
livres et leur notation. Cette évolution offre également une
flexibilité et une scalabilité optimales pour répondre aux besoins
en constante évolution, tout en souciant de l'impact écologique
du site. Vieux-Grimoire est maintenant prêt à offrir une expérience
utilisateur améliorée et sécurisée.

Vous aimerez peut-être aussi