Associez API les étapes à un nom de domaine personnalisé pour REST APIs - APIPasserelle Amazon

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Associez API les étapes à un nom de domaine personnalisé pour REST APIs

Vous utilisez API des mappages pour connecter les API stages à un nom de domaine personnalisé. Après avoir créé un nom de domaine et configuré DNS des enregistrements, vous utilisez API des mappages pour envoyer du trafic vers vous APIs via votre nom de domaine personnalisé.

Un API mappage spécifie uneAPI, une étape et éventuellement un chemin à utiliser pour le mappage. Par exemple, vous pouvez mapper le production stade d'un API àhttps://api.example.com/orders.

Vous pouvez mapper HTTP les REST API étapes et les étapes sur le même nom de domaine personnalisé.

Avant de créer un API mappage, vous devez disposer d'unAPI, d'un stage et d'un nom de domaine personnalisé. Pour plus d'informations sur la création d'un nom de domaine personnalisé, consultez Configurer un nom de domaine personnalisé régional dans API Gateway.

APIDemandes de routage

Vous pouvez configurer API des mappages à plusieurs niveaux, par exemple orders/v1/items etorders/v2/items.

Note

Pour configurer API des mappages à plusieurs niveaux, vous devez utiliser un nom de domaine personnalisé régional conforme à la politique de sécurité TLS 1.2.

Pour API les mappages à plusieurs niveaux, API Gateway achemine les demandes vers le API mappage dont le chemin correspondant est le plus long. APIGateway ne prend en compte que les chemins configurés pour API les mappages, et non API les itinéraires, pour sélectionner ceux API à invoquer. Si aucun chemin ne correspond à la demande, API Gateway envoie la demande au chemin API que vous avez mappé au chemin (none) vide.

Pour les noms de domaine personnalisés qui utilisent API des mappages à plusieurs niveaux, API Gateway achemine les demandes vers le API mappage dont le préfixe correspondant le plus long est le plus long.

Par exemple, considérez un nom de domaine personnalisé https://api.example.com avec les API mappages suivants :

  1. (none)mappé à API 1.

  2. ordersmappé à API 2.

  3. orders/v1/itemsmappé à API 3.

  4. orders/v2/itemsmappé à API 4.

  5. orders/v2/items/categoriesmappé à API 5.

Demande Sélectionné API Explication

https://api.example.com/orders

API 2

La demande correspond exactement à ce API mappage.

https://api.example.com/orders/v1/items

API 3

La demande correspond exactement à ce API mappage.

https://api.example.com/orders/v2/items

API 4

La demande correspond exactement à ce API mappage.

https://api.example.com/orders/v1/items/123

API 3

APIGateway choisit le mappage dont le chemin correspondant est le plus long. La présence de 123 à la fin de la demande n'affecte pas la sélection.

https://api.example.com/orders/v2/items/categories/5

API 5

APIGateway choisit le mappage dont le chemin correspondant est le plus long.

https://api.example.com/customers

API 1

APIGateway utilise le mappage vide comme fourre-tout.

https://api.example.com/ordersandmore

API 2

APIGateway choisit le mappage dont le préfixe correspondant le plus long est le plus long.

Pour un nom de domaine personnalisé configuré avec des mappages à un seul niveau, tels que only https://api.example.com/orders ethttps://api.example.com/, API Gateway choisiraitAPI 1, car il n'existe aucun chemin correspondant avec. ordersandmore

Restrictions

  • Dans un API mappage, le nom de domaine personnalisé et le nom de domaine mappé APIs doivent se trouver dans le même AWS compte.

  • APIles mappages ne doivent contenir que des lettres, des chiffres et les caractères suivants : $-_.+!*'()/

  • La longueur maximale du chemin dans un API mappage est de 300 caractères.

  • Vous pouvez avoir 200 API mappages à plusieurs niveaux pour chaque nom de domaine.

  • Vous ne pouvez HTTP APIs mapper un nom de domaine personnalisé régional qu'avec la politique de sécurité TLS 1.2.

  • Vous ne pouvez pas WebSocket APIs mapper le même nom de domaine personnalisé qu'un HTTP API ou RESTAPI.

Création d'un API mappage

Pour créer un API mappage, vous devez d'abord créer un nom de domaine personnaliséAPI, et une étape. Pour plus d'informations sur la création d'un nom de domaine personnalisé, consultez Configurer un nom de domaine personnalisé régional dans API Gateway.

Pour des exemples AWS Serverless Application Model de modèles qui créent toutes les ressources, voir Sessions With SAM on GitHub.

AWS Management Console
Pour créer un API mappage
  1. Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.

  2. Choisissez Noms de domaine personnalisés.

  3. Sélectionnez un nom de domaine personnalisé que vous avez déjà créé.

  4. Choisissez des APImappages.

  5. Choisissez Configurer les API mappages.

  6. Choisissez Ajouter un nouveau mappage.

  7. Entrez une API, une étape et éventuellement un chemin.

  8. Choisissez Save (Enregistrer).

AWS CLI

La AWS CLI commande suivante crée un API mappage. Dans cet exemple, API Gateway envoie des demandes api.example.com/v1/orders à l'étape spécifiéeAPI.

Note

Pour créer API des mappages à plusieurs niveaux, vous devez utiliserapigatewayv2.

aws apigatewayv2 create-api-mapping \ --domain-name api.example.com \ --api-mapping-key v1/orders \ --api-id a1b2c3d4 \ --stage test
AWS CloudFormation

L' AWS CloudFormation exemple suivant crée un API mappage.

Note

Pour créer API des mappages à plusieurs niveaux, vous devez utiliserAWS::ApiGatewayV2.

MyApiMapping: Type: 'AWS::ApiGatewayV2::ApiMapping' Properties: DomainName: api.example.com ApiMappingKey: 'orders/v2/items' ApiId: !Ref MyApi Stage: !Ref MyStage