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.
Les exemples suivants montrent comment créer des expressions de mappage de paramètres à l'aide de la console API Gateway, d'OpenAPI et AWS CloudFormation de modèles. Pour un exemple d'utilisation du mappage de paramètres pour créer les en-têtes CORS requis, consultez. CORS pour REST APIs dans API Gateway
Exemple 1 : associer un paramètre de demande de méthode à un paramètre de demande d'intégration
L'exemple suivant met en correspondance le paramètre d'en-tête de demande de méthode avec le paramètre puppies
d'en-tête de demande d'intégrationDogsAge0
.
Pour mapper le paramètre de demande de méthode
Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.
Choisissez une API REST.
Choisissez une méthode.
Votre méthode doit comporter une intégration sans proxy.
-
Pour les paramètres de demande de méthode, choisissez Modifier.
Développez En-têtes de demande HTTP.
Sélectionnez Add header.
Pour Nom, saisissez
puppies
.Choisissez Save (Enregistrer).
-
Choisissez l’onglet Requête d’intégration, puis dans la section Paramètres de requête d’intégration, choisissez Modifier.
Ajoute AWS Management Console automatiquement un mappage de paramètres de
method.request.header.puppies
àpuppies
pour vous, mais vous devez modifier le nom pour qu'il corresponde au paramètre d'en-tête de demande attendu par votre point de terminaison d'intégration. -
Pour Nom, saisissez
DogsAge0
. Choisissez Save (Enregistrer).
Redéployez l’API pour que les modifications prennent effet.
Les étapes suivantes vous montrent comment vérifier que le mappage des paramètres est réussi.
(Facultatif) Testez le mappage de vos paramètres
Choisissez l’onglet Test. Vous devrez peut-être choisir la flèche droite pour afficher l’onglet.
Pour les en-têtes, entrez
puppies:true
.Sélectionnez Tester).
Dans les journaux, le résultat devrait ressembler à ce qui suit :
Tue Feb 04 00:28:36 UTC 2025 : Method request headers: {puppies=true} Tue Feb 04 00:28:36 UTC 2025 : Method request body before transformations: Tue Feb 04 00:28:36 UTC 2025 : Endpoint request URI: http://petstore-demo-endpoint.execute-api.com/petstore/pets Tue Feb 04 00:28:36 UTC 2025 : Endpoint request headers: {DogsAge0=true, x-amzn-apigateway-api-id=abcd1234, Accept=application/json, User-Agent=AmazonAPIGateway_aaaaaaa, X-Amzn-Trace-Id=Root=1-abcd-12344}
Le paramètre d'en-tête de demande est passé de
puppies
àDogsAge0
.
Exemple 2 : associer plusieurs paramètres de demande de méthode à différents paramètres de demande d'intégration
L'exemple suivant met en correspondance le paramètre de chaîne de requête de méthode methodRequestQueryParam
à valeurs multiples avec le paramètre de chaîne de requête de demande d'intégration integrationQueryParam
et met en correspondance le paramètre d'en-tête de demande de méthode avec le paramètre methodRequestHeaderParam
de chemin de la demande d'intégration. integrationPathParam
Pour mapper les paramètres de demande de méthode
Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.
Choisissez une API REST.
Choisissez une méthode.
Votre méthode doit comporter une intégration sans proxy.
-
Pour les paramètres de demande de méthode, choisissez Modifier.
Choisissez Paramètres de chaîne de requête d’URL.
Sélectionnez Add query string (Ajouter une chaîne de requêtes).
Pour Nom, saisissez
methodRequestQueryParam
.Développez En-têtes de demande HTTP.
Sélectionnez Add header.
Pour Nom, saisissez
methodRequestHeaderParam
.Choisissez Save (Enregistrer).
-
Choisissez l’onglet Requête d’intégration, puis dans la section Paramètres de requête d’intégration, choisissez Modifier.
Choisissez paramètres de chemin d’URL.
Choisissez Ajouter un paramètre de chemin.
-
Pour Nom, saisissez
integrationPathParam
. Pour Mappage à partir de, entrez
method.request.header.methodRequestHeaderParam
.Cela fait correspondre l'en-tête de demande de méthode que vous avez spécifié dans la demande de méthode à un nouveau paramètre de chemin de demande d'intégration.
Choisissez Paramètres de chaîne de requête d’URL.
Sélectionnez Add query string (Ajouter une chaîne de requêtes).
-
Pour Nom, saisissez
integrationQueryParam
. Pour Mappage à partir de, entrez
method.request.multivaluequerystring.methodRequestQueryParam
.Cela fait correspondre le paramètre de chaîne de requête à valeurs multiples à un nouveau paramètre de chaîne de requête de demande d'intégration à valeur unique.
Choisissez Save (Enregistrer).
Redéployez l’API pour que les modifications prennent effet.
Exemple 3 : associer les champs du corps de la requête JSON aux paramètres de la demande d'intégration
Vous pouvez également mapper les paramètres de demande d'intégration à partir des champs du corps de la demande JSON à l'aide d'une JSONPath expressionbody-header
et fait correspondre une partie du corps de la demande, tel qu'exprimé par une expression JSON, à un en-tête de demande d'intégration nommépet-price
.
Pour tester cet exemple, fournissez une entrée contenant une catégorie de prix, telle que la suivante :
[ { "id": 1, "type": "dog", "price": 249.99 } ]
Pour mapper les paramètres de demande de méthode
Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.
Choisissez une API REST.
-
Choisissez une
ANY
méthodePOST
PUT
PATCH
,, ou.Votre méthode doit comporter une intégration sans proxy.
-
Pour les paramètres de demande d'intégration, choisissez Modifier.
Choisissez les paramètres des en-têtes de demande d'URL.
Choisissez Ajouter un paramètre d'en-tête de demande.
-
Pour Nom, saisissez
body-header
. Pour Mappage à partir de, entrez
method.request.body
.Cela fait correspondre le corps de la demande de méthode à un nouveau paramètre d'en-tête de demande d'intégration.
Choisissez Ajouter un paramètre d'en-tête de demande.
-
Pour Nom, saisissez
pet-price
. Pour Mappage à partir de, entrez
method.request.body[0].price
.Cela fait correspondre une partie du corps de la demande de méthode à un nouveau paramètre d'en-tête de demande d'intégration.
Choisissez Save (Enregistrer).
Redéployez l’API pour que les modifications prennent effet.
Exemple 4 : mapper la réponse d'intégration à la réponse de la méthode
Vous pouvez également mapper la réponse d'intégration à la réponse de méthode. L'exemple suivant met en correspondance le corps de la réponse d'intégration avec un en-tête de réponse de méthode nommélocation
, met en correspondance l'en-tête x-app-id
de réponse d'intégration avec l'en-tête de réponse de méthode et id
met en correspondance l'en-tête de réponse d'intégration item
à valeurs multiples avec l'en-tête de réponse de méthode. items
Pour cartographier la réponse d'intégration
Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.
Choisissez une API REST.
Choisissez une méthode.
Votre méthode doit comporter une intégration sans proxy.
-
Choisissez l'onglet Méthode de réponse, puis pour Réponse 200, sélectionnez Modifier.
Pour Nom de l'en-tête, choisissez Ajouter un en-tête.
Créez trois en-têtes nommés
id
item
, et.location
Choisissez Save (Enregistrer).
-
Choisissez l'onglet Réponse d'intégration, puis pour Default - Response, sélectionnez Modifier.
Sous Mappages d'en-têtes, entrez ce qui suit.
Pour id, entrez
integration.response.header.x-app-id
Pour l'article, entrez
integration.response.multivalueheader.item
Pour l'emplacement, entrez
integration.response.body.redirect.url
-
Choisissez Save (Enregistrer).
Redéployez l’API pour que les modifications prennent effet.