Configuration d'une réponse d'intégration dans API Gateway - 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.

Configuration d'une réponse d'intégration dans API Gateway

Dans le cas d'une intégration autre que de proxy, vous devez configurer au moins une réponse d'intégration, et en faire la réponse par défaut, pour transmettre le résultat renvoyé par le backend au client. Vous pouvez choisir de transmettre le résultat en l'état ou de transformer les données de réponse d'intégration aux données de réponse de la méthode si les deux ont des formats différents.

Dans le cas d'une intégration de proxy, API Gateway transmet automatiquement la sortie du backend au client sous la forme d'une réponse HTTP. Vous ne configurez pas soit une réponse d'intégration soit une réponse de méthode.

Pour configurer une réponse d'intégration, effectuez les tâches facultatives et obligatoires suivantes :

  1. Spécifiez un code de statut HTTP d'une méthode de réponse à laquelle les données de réponse d'intégration sont mappées. C'est obligatoire.

  2. Définissez une expression régulière pour sélectionner la sortie du serveur principal à représenter par cette réponse d'intégration. Si vous laissez ce champ vide, la réponse est la réponse par défaut utilisée pour recueillir les réponses qui n'ont pas encore été configurées.

  3. Le cas échéant, déclarez des mappages composés de paires clé/valeur pour mapper des paramètres de réponse d'intégration spécifiés à des paramètres de réponse de méthode donnés.

  4. Le cas échéant, ajoutez des modèles de mappage de corps pour transformer les charges utiles de réponse d'intégration données en charges utiles de réponse de méthode spécifiées.

  5. Le cas échéant, spécifiez la manière de gérer la conversion de type pour une charge utile binaire.

Une réponse d'intégration est une réponse HTTP encapsulant la réponse du backend. Pour un point de terminaison HTTP, la réponse du backend est une réponse HTTP. Le code de statut de réponse d'intégration peut prendre le code de statut renvoyé par le backend, et le corps de réponse d'intégration est la charge utile renvoyée par le backend. Pour un point de terminaison Lambda, la réponse du backend est la sortie renvoyée par la fonction Lambda. Avec l'intégration Lambda, la sortie de fonction Lambda est renvoyée en tant que réponse 200 OK. La charge utile peut contenir le résultat sous la forme de données JSON, y compris une chaîne JSON ou un objet JSON, ou un message d'erreur sous la forme d'un objet JSON. Vous pouvez attribuer une expression régulière à la propriété selectionPattern pour mapper une réponse d'erreur à une réponse d'erreur HTTP appropriée. Pour de plus amples informations sur la réponse d'erreur de la fonction Lambda, veuillez consulter Gestion des erreurs Lambda dans API Gateway. Avec l'intégration de proxy Lambda, la fonction Lambda doit renvoyer une sortie au format suivant :

{ statusCode: "...", // a valid HTTP status code headers: { custom-header: "..." // any API-specific custom header }, body: "...", // a JSON string. isBase64Encoded: true|false // for binary support }

Il n'y a pas besoin de mapper la réponse de la fonction Lambda à la réponse HTTP adéquate.

Pour renvoyer le résultat au client, configurez la réponse d'intégration pour transmettre la réponse du point de terminaison en l'état à la réponse de méthode correspondante. Vous pouvez également mapper les données de réponse du point de terminaison aux données de réponse de la méthode. Les données de réponse qui peuvent être mappées comprennent le code de statut de réponse, les paramètres d'en-tête de réponse et le corps de réponse. Si aucune réponse de méthode n'est définie pour le code de statut renvoyé, API Gateway renvoie une erreur 500. Pour plus d'informations, voir Utiliser un modèle de mappage pour remplacer les paramètres API de demande et de réponse et les codes d'état d'un.