Développeurs Javascript
Bonne connaissance de javascript et des fondamentaux de Node.js
Apprendre à construire une API REST sécurisée avec Express.js
Architecture en couches: du monolythe au microservicesContraintes d'architecture des microservicesGestion de l'authentification centralisée dans une architecture microservicesIntérêt d'une passerelle d'APIGestion centralisée des traces
Express.js: principe, fonctionnalités, pré-requisConfiguration du projet: packages et modules additionnels: Morgan, Helmet, Cors,...Configuration de morgan pour la gestion des logs de requêtes HTTPOrganisation des couches du projet: routes, services, repositoriesIntérêt d'une couche DTO, utilisation d'un mapper d'objets: automapper ou autreImplémentation de contrôleurs REST: gestion des routes, traitement asynchroneGestion des paramètres de méthodes et du mappingGestion du downloadGestion de l'upload, configurationGestion des services et des transactions associéesGestion du cross origin avec Cors et restriction des domaines appelantsTest de l'api REST avec PostmanEcriture de tâches asynchrones, planificationCache webAtelier: Écriture de micro-services avec Express.js - Test des méthodes de services avec Postman ou autre
Open API Specification (Swagger): présentation, outilUtilisation de express-openapiVisualisation avec Swagger EditorDocumentation du code Java, génération de javadocAtelier: Documentation de l'api
Gestion globale des exceptionsCapture d'exceptions personnaliséesIntercepteurs de requêtes/réponsesAtelier: Gestion des exceptions et implémentation d'intercepteurs
http_request: méthodes et paramètresEcriture de requêtes GET, POST, PUT, DELETEGestion des paramètres et du corps de la requêteGestion des headersGestion des réponses et utilisation de mappersAtelier: Implémentation de clients pour un service REST
Configuration de HelmetGestion des données d’entêteGestion des utilisateurs et des rôles: mise en place de JWT (passport-jwt)Hachage des mots de passe avec bcryptjsAtelier: Intégration de Helmet, jsonwebtoken, dotenv et bcryptjs
Stratégies de tests, types supportésInstallation de jest, supertest et cross-env, configuration de l'applicationMocking des couches de l'applicationTests auto-configurésExécution et reportingAtelier: implémentation et exécution de tests avec Jest et supertest
Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.
Contrôle continu
Attestation de fin de stage mentionnant le résultat des acquis