Comment configurer l'API REST de mon API Gateway pour transmettre les paramètres de la chaîne d'interrogation à une fonction backend Lambda ou à un point de terminaison HTTP ?

Lecture de 4 minute(s)
0

J'ai besoin de l'API REST de mon Amazon API Gateway pour transmettre les paramètres des chaînes de requête à une fonction backend AWS Lambda et à un point de terminaison HTTP.

Brève description

Pour configurer une API REST afin de transmettre les paramètres d'une chaîne de requête à une fonction backend AWS Lambda, utilisez une intégration personnalisée Lambda.

Pour transmettre des paramètres de chaîne de requête à un point de terminaison HTTP, utilisez une intégration personnalisée HTTP.

**Important :**assurez-vous de fournir les données d'entrée comme charge utile de la demande d'intégration. Il est recommandé d'utiliser un modèle de cartographie pour fournir la charge utile. Pour plus d'informations, voir Mapper les charges utiles de demande et de réponse entre la méthode et l'intégration.

Solution

Passage des paramètres de la chaîne de requête à une fonction backend Lambda

1.    Ouvrez la console API Gateway, puis choisissez votre API.

2.    Dans le volet Ressources, choisissez la méthode HTTP configurée.

Remarque : Si plusieurs méthodes HTTP sont configurées pour l'API, puis, répétez les étapes 2 à 15 pour chaque méthode.

3.    Dans le volet Exécution de la méthode, sélectionnez Demande de méthode.

4.    Développez la liste déroulante Paramètres de chaîne de requête URL , puis choisissez Ajouter une chaîne de requête.

5.    Dans le champ Nom , entrez pet, puis sélectionnez l'icône de coche.

6.    Activez la case à cocher Obligatoire .

7.    Choisissez le volet Exécution de méthode .

8.    Choisissez Demande d'intégration.

9.    Choisissez la liste déroulante Mapping Templates (Modèles de mappage), puis choisissez Add mapping template (Ajouter un modèle de mappage).

10.    Pour le champ Content-Type, entrez application/json et choisissez ensuite l'icône en forme de coche.

11.    Dans la fenêtre contextuelle qui s'affiche, choisissez Oui, sécurisez cette intégration.

12.    Pour la Transmission du corps de la demande, choisissez Lorsqu'il n'y a pas de modèles définis (recommandé).

13.    Dans l'éditeur de modèle de mappage, copiez et remplacez le script existant par le code suivant :

{
     "pet": "$input.params('pet')"
}

Remarque : Pour plus d'informations, consultez les variables $input.

14.    Choisissez Enregistrer etDéployer l'API.

15.    Pour tester le nouveau point de terminaison de l'API, exécutez la commande curl suivante :

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog

Important : Assurez-vous que la commande curl a le paramètre de chaîne de requête pet=dog.

Passer des paramètres de chaîne de requête à un point de terminaison HTTP

1.    Ouvrez la console API Gateway, puis choisissez votre API.

2.    Dans le volet Resources (Ressources), choisissez la méthode HTTP configurée.

Remarque : si plusieurs méthodes HTTP sont configurées pour l'API, répétez les étapes 2 à 10 pour chaque méthode.

3.    Dans le volet Exécution de la méthode, sélectionnez Demande de méthode.

4.    Développez la liste déroulante Paramètres de chaîne de requête URL et choisissez Ajouter une chaîne de requête.

5.    Dans le champ Nom, entrez type , puis sélectionnez l'icône de coche.

6.    Choisissez le volet Exécution de méthode .

7.    Choisissez Demande d'intégration.

8.    Développez la section Paramètres de chaîne de requête URL .

Remarque : par défaut, les paramètres de la chaîne de requête de la méthode sont mis en correspondance avec les paramètres de la chaîne de requête d'intégration du même nom. Pour voir cela, actualisez la page de la console API Gateway. Pour mapper un paramètre de demande de méthode à un autre paramètre de demande d'intégration, supprimez d'abord le paramètre de demande d'intégration existant. Ensuite, ajoutez une nouvelle chaîne de requête avec l'expression de mappage de paramètre de demande de méthode souhaitée.

9.    Choisissez Enregistrer, puis Déployer l'API.

10.    Pour tester le nouveau point de terminaison de l'API, exécutez la commande curl suivante :

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog

Important : Assurez-vous que la commande curl a le paramètre de chaîne de requête pet=dog.


Informations connexes

Tutoriel : créer une API REST Hello World avec l'intégration de proxy Lambda

Didacticiel : créer une passerelle API REST d'API Gateway avec l'intégration non-proxy Lambda

Tutoriel : Créer une API REST avec l'intégration de proxy HTTP

Didacticiel : Construire une API REST avec l'intégration HTTP non-proxy