0% ont trouvé ce document utile (0 vote)
43 vues1 page

Projet API REST FullStack JS

Ce document décrit un projet de développement d'une API RESTful avec Express et TypeScript. Le projet doit inclure des fonctionnalités CRUD, une authentification d'utilisateurs avec hachage de mots de passe, une persistance de données dans une base de données, un hébergement sur Internet, une gestion des erreurs et un fichier de test pour l'API.

Transféré par

Amalric Vaurs
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
43 vues1 page

Projet API REST FullStack JS

Ce document décrit un projet de développement d'une API RESTful avec Express et TypeScript. Le projet doit inclure des fonctionnalités CRUD, une authentification d'utilisateurs avec hachage de mots de passe, une persistance de données dans une base de données, un hébergement sur Internet, une gestion des erreurs et un fichier de test pour l'API.

Transféré par

Amalric Vaurs
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Projet FullStack JS

Description
Créer un serveur express hébergeant une API Rest avec expressJS et le langage TypeScript. Le serveur
persiste les données via une une BDD relationnelle (ex. mariadb ou postgres) ou noSQL.

Le couple (API/web app) doit permettre aux utilisateurs de faire du CRUD (Create, Read, Update, Delete) sur
un thème de votre choix.

Ce qui est demandé dans le projet:


● 4 verbes ou endpoints CRUD (3 pts)
● Une gestion des utilisateur (login, mot de passe) (3 pts)
○ Implémenté vous-même sans passer par une librairie
○ Les mots de passe doivent être hachés. Vous pouvez utiliser une librairie ou réutiliser du code
existant pour la fonction de hachage.
○ A l’authentification, un token (chaînes de caractères aléatoires) est associée à l’utilisateur
○ A chaque requête CRUD, le client passe le token dans un header Authorization de valeur
Bearer TOKEN
■ Authorization: Bearer TOKEN
○ A la déconnexion, le serveur supprime le token de la BDD
○ Attention: ne pas faire comme en en PHP ($_session, formulaire en $_post, etc…)
● Persistance dans une BDD (3 pts)
● Le projet doit être hébergé et accessible sur internet (par exemple alwaysdata propose gratuitement un
hébergement nodejs) (3 pts)
● Une gestion des erreurs correcte (par exemple: interdiction d’ajout de doublons) (3 pts)
● Un fichier compatible avec l’extension Rest Client qui permet de tester l’API (2 pts)
● Fonctions en plus (3 pts)
Le thème est au choix (exemples pour donner un ordre d’idée: Application de gestion de notes ou Application
de gestion de cartes pokemon)

Rendu attendu
● Le code source du projet. Vous avez le choix entre:
○ Le zip minimal du projet (sans node_modulues). Il faut que j’arrive à lancer le projet en local
avec un “npm install” puis un “npm start”
■ Le nom du zip est:
○ L’url github de votre projet (si le projet est privé, me donner l’accès pour cloner) et faire la
mention
● L’url de votre site hébergé et fonctionnel

Points d’attention

⚠️ / conseils
Attention à rendre le résultat d’un tuto

Vous aimerez peut-être aussi