Appeler les API des sous-applications
App supervisorEnterprise Edition+Dans un environnement multi-applications, chaque sous-application possède ses propres API. Lors d'un appel, l'application d'entrée doit savoir vers quelle sous-application router la requête.
Par exemple, une API de l'application principale ressemble généralement à :
/api est le préfixe API par défaut et peut être personnalisé avec la variable d'environnement API_BASE_PATH.
Pour appeler la même API dans une sous-application, indiquez le nom de cette sous-application.
Utiliser un préfixe de chemin
Utilisez le préfixe /api/__app/<appName>/ :
Où :
a_xxxest le nom de la sous-applicationusers:listest la ressource et l'action appelées/apiest le chemin de base API du système courant
Les paramètres de requête peuvent être ajoutés normalement :
Cette méthode est explicite et convient bien aux déploiements multi-environnements.
Utiliser un en-tête
Si l'appelant utilise déjà une adresse /api/... fixe, indiquez la sous-application avec l'en-tête X-App :
Cette méthode convient aux appels backend ou aux clients frontend dont les URL d'API sont centralisées.
Utiliser un paramètre de requête
Vous pouvez aussi utiliser le paramètre __appName :
Avec d'autres paramètres :
En général, le préfixe de chemin ou l'en-tête rend la sous-application cible plus explicite.
Adresse API en multi-environnement
En multi-environnement, il existe généralement une application d'entrée et plusieurs environnements d'exécution.
Exemple :
- Adresse de l'application d'entrée :
http://localhost:13003 - Adresse d'un environnement d'exécution :
http://localhost:14000
Il est recommandé d'appeler les API via l'application d'entrée :
L'application d'entrée route la requête selon la configuration. Si vous savez précisément quel environnement appeler, vous pouvez aussi utiliser son adresse :
Domaines propres aux sous-applications
Si une sous-application possède son propre domaine, vous pouvez appeler directement ses API :
Pour passer uniformément par l'application d'entrée, utilisez toujours /api/__app/<appName>/....
Authentification
Les contrôles d'autorisation restent basés sur la sous-application cible.
Cela signifie :
- Il faut un état de connexion ou un jeton valide pour la sous-application
- La connexion à l'application principale ne donne pas automatiquement des droits API dans la sous-application
Sans informations d'authentification valides, la sous-application renvoie une erreur de non-authentification ou d'autorisation selon sa configuration.

