N07 — Exercices Routing Modulaire
10 exercices progressifs · Valide en temps réel · Solutions incluses
Créer un routeur basique
Créez un routeur Express avec express.Router() et ajoutez une route router.get('/').
Monter un routeur avec préfixe
Créez un routeur et montez-le sur l'app Express avec app.use('/api/products', router).
router.route() — Routes chaînées
Utilisez router.route('/') pour chaîner .get() et .post() sur la même URL.
router.param() — Middleware de paramètre
Utilisez router.param('id', callback) pour valider l'ID avant d'atteindre le handler.
Fichier de routes séparé avec module.exports
Écrivez un fichier routes/articles.js complet avec module.exports = router.
Controller séparé
Écrivez un fichier controller (sans Router) qui exporte des fonctions handler via module.exports.
Sous-routeurs imbriqués
Créez au moins 2 routeurs imbriqués : un routeur principal monte des sous-routeurs avec router.use().
Middleware router-level avec router.use()
Ajoutez un middleware avec router.use() qui logge les requêtes et appelle next().
Routes nommées avec req.params
Créez des routes avec paramètres dynamiques (:id, :category) et utilisez req.params.
Architecture complète — 3 fichiers
Défi final : simulez une architecture complète avec controller, routeur (module.exports) et montage (app.use). Code > 300 caractères.