Express : comment structurer une API qui grossit ?
asked 5 months ago349 viewsfr
Mon server.js fait 1 500 lignes avec toutes les routes, la validation et les requêtes SQL mélangées. Quelle structure adopter ?
AI diagnosis
AI-generated. Not an answer — the community below confirms or corrects it. Always verify before relying on it.
1 Answer
Sépare par fonctionnalité et par couche :
src/
app.js # création de l'app, middlewares globaux
server.js # listen()
modules/
users/
users.routes.js # routes + validation (zod)
users.service.js # logique métier
users.repository.js # accès BDD
orders/
...
lib/
db.js
errors.js # classes d'erreur + middleware d'erreur
Principes : - Les routes parsent et valident la requête, puis appellent un service. Pas de SQL dans les routes. - Les services ne connaissent ni req ni res, donc ils sont testables unitairement. - Un middleware d'erreur unique transforme les exceptions en réponses HTTP cohérentes.
Sépare aussi app.js et server.js : tu peux alors tester l'app avec supertest sans ouvrir de port.
Sign in to tell others whether this worked.
Sign in and verify your email to post an answer.