Utilisation de mappages d’API pour connecter des étapes d’API REST à un nom de domaine personnalisé
Les mappages d’API vous permettent de connecter des étapes d’API à un nom de domaine personnalisé. Ils envoient le trafic à vos API via votre nom de domaine personnalisé.
Un mappage d’API spécifie une API, une étape et éventuellement un chemin à utiliser pour le mappage. Par exemple, vous pouvez mapper https://api.example.com/orders à l’étape production d’une API.
Vous pouvez mapper les étapes d’API HTTP et REST au même nom de domaine personnalisé.
Avant de créer un mappage d’API, vous devez disposer d’une API, d’une étape et d’un nom de domaine personnalisé. Pour plus d’informations sur la création d’un nom de domaine personnalisé, consultez Configuration d’un nom de domaine personnalisé régional dans API Gateway.
Demandes entrantes de votre nom de domaine personnalisé
Lorsque vous mappez un nom de domaine personnalisé à une étape de votre API, API Gateway supprime le chemin de base entrant. Le chemin de base mappé de l’invocation de l’API est supprimé. Par exemple, si votre chemin de base https://api.example.com/orders/shop/5 était mappé à l’étape test et que vous utilisiez la demande https://api.example.com/orders/shop/5/hats, API Gateway invoquerait la ressource /hats de l’étape test de votre API, et non la ressource orders/shop/5/hats.
Mappage des demandes d’API
L’exemple suivant explique comment API Gateway évalue les mappages d’API.
Vous pouvez créer un mappage d’API à l’aide de mappages à un niveau, par exemple un mappage d’API entre orders et l’étape beta d’une API, et un mappage d’API entre shipping et l’étape alpha d’une API. Pour les noms de domaine personnalisés régionaux avec une politique de sécurité TLS 1.2, API Gateway prend en charge les mappages d’API à plusieurs niveaux. Vous pouvez créer un mappage d’API entre orders/v1/items et l’étape alpha d’une API, et entre orders/v2/items et l’étape beta d’une API. Lorsque vous créez un mappage à plusieurs niveaux, API Gateway achemine les demandes vers le mappage d’API au chemin de correspondance le plus long.
Vous pouvez créer un mappage d’API vers le chemin vide (none). Si aucun chemin ne correspond à la demande, API Gateway envoie celle-ci au chemin vide (none).
Dans cet exemple, le nom de domaine personnalisé https://api.example.com possède les mappages d’API suivants.
| Mappage d’API | API sélectionnée |
|---|---|
|
|
API 1 |
|
|
API 2 |
|
|
API 3 |
|
|
API 4 |
|
|
API 5 |
Le tableau suivant montre comment API Gateway applique les mappages d’API précédents à des exemples de demande.
| Requête | API sélectionnée | Explication |
|---|---|---|
|
|
API 2 |
La demande correspond exactement à ce mappage d’API. |
|
|
API 3 |
La demande correspond exactement à ce mappage d’API. |
|
|
API 4 |
La demande correspond exactement à ce mappage d’API. |
|
|
API 3 |
API Gateway choisit le mappage d’API au chemin de correpondance le plus long. La présence de |
|
|
API 5 |
API Gateway choisit le mappage d’API au chemin de correpondance le plus long. |
|
|
API 1 |
API Gateway utilise le mappage vide comme fourre-tout. |
|
|
API 2 |
API Gateway choisit le mappage d’API au préfixe de correspondance le plus long. Pour un nom de domaine personnalisé configuré avec des mappages à un seul niveau, tels que |
Restrictions
-
Dans un mappage d’API, le nom de domaine personnalisé et les API mappées doivent se trouver sur le même compte AWS.
-
Les mappages d’API ne doivent contenir que des lettres, des chiffres et les caractères suivants :
$-_.+!*'()/. -
La longueur maximale du chemin d’un mappage d’API est de 300 caractères.
-
Vous pouvez disposer de 200 mappages d’API à plusieurs niveaux pour chaque nom de domaine. Cette limite n’inclut pas les mappages d’API à un niveau tels que
/prod. -
Vous ne pouvez mapper les API HTTP à un nom de domaine personnalisé régional qu’à l’aide de la politique de sécurité TLS 1.2.
-
Vous ne pouvez pas mapper les API WebSocket au même nom de domaine personnalisé qu’une API HTTP ou une API REST.
-
Après avoir créé vos mappages d’API, vous devez créer ou mettre à jour l’enregistrement de ressource de votre fournisseur DNS pour le mapper au point de terminaison de votre API.
-
Si vous créez un mappage d’API à plusieurs niveaux, API Gateway convertit tous les noms d’en-tête en minuscules.
Création d’un mappage d’API
Pour créer un mappage d’API, vous devez d’abord créer un nom de domaine personnalisé, une API et une étape. Le mode de routage de votre nom de domaine personnalisé doit être défini sur ROUTING_RULE_THEN_API_MAPPING ou API_MAPPING_ONLY. Pour plus d’informations sur la configuration du mode de routage, consultez Définition du mode de routage de votre nom de domaine personnalisé.
Pour accéder à des exemples de modèles AWS Serverless Application Model qui créent toutes les ressources, consultez Séances avec SAM