Express : comment structurer une API qui grossit ?

poze 5 months ago343 gadefr

0

Mon server.js fait 1 500 lignes avec toutes les routes, la validation et les requêtes SQL mélangées. Quelle structure adopter ?

Dyagnostik IA

Se IA ki fè l. Se pa yon repons — kominote a anba a konfime oswa korije l. Toujou verifye anvan ou fye l.

poze 5 months ago

1 Repons

8
✓
✓ Repons yo aksepte

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.

Konekte pou di lòt moun si li te mache.

answered 5 months ago

Sign in and verify your email to post an answer.