Dev : proxy /api paramétrable et arrêt propre du groupe de process

- run-dev.sh s'exécute dans sa propre session (setsid) et tue le GROUPE
  de process entier au cleanup : le backend (Kestrel) et ses enfants
  sont bien arrêtés, le port backend est réellement libéré à l'arrêt
- Port backend paramétrable via BACKEND_PORT (défaut 8080), transmis à
  la fois au backend (dotnet --urls) et au proxy de dev du front
- Nouveau frontend/proxy.conf.js : ng serve relaie /api vers
  http://localhost:${BACKEND_PORT} ; référencé dans angular.json (serve)
- environment.ts (dev) : apiUrl passe à '/api' (same-origin via proxy),
  le port du backend n'est plus codé en dur dans le front
- Prod inchangée (environment.prod.ts déjà en '/api', nginx)
This commit is contained in:
2026-10-13 08:30:25 +02:00
parent 6fb311a422
commit 0e5b1c4d0d
5 changed files with 63 additions and 16 deletions
+7 -5
View File
@@ -1,11 +1,13 @@
// Environnement de développement.
// En dev, le frontend Angular tourne sur son propre serveur (ng serve, port 4200)
// et adresse directement le backend ASP.NET Core.
// En dev, le frontend Angular tourne sur son propre serveur (ng serve, port 4200).
// Les appels à `/api` sont relayés vers le backend par le proxy de dev (proxy.conf.js,
// cible `serve` dans angular.json), dont le port est paramétrable via BACKEND_PORT.
// L'API est donc consommée en same-origin via le chemin relatif `/api`, comme en prod :
// le port du backend n'est plus codé en dur dans le front.
export const environment = {
production: false,
// URL de base de l'API backend en développement.
// Le backend écoute par défaut sur http://localhost:8080 (cf. Docker / Program.cs).
apiUrl: 'http://localhost:8080/api',
// Chemin relatif : le proxy de dev (proxy.conf.js) relaie /api vers le backend.
apiUrl: '/api',
// Timeout HTTP appliqué par le TimeoutInterceptor (Exigence 1.9 : 10 secondes).
httpTimeoutMs: 10000,
// API Base Adresse Nationale (autocomplétion adresses françaises).