x-amazon-apigateway-integration objet - 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.

x-amazon-apigateway-integration objet

Spécifie les détails de l'intégration au backend utilisée pour cette méthode. Cette extension est une propriété étendue de l'objet Open API Operation. Le résultat est un objet d'intégration API Gateway.

Nom de la propriété Type Description
cacheKeyParameters Tableau d'éléments string Liste de paramètres de demande dont les valeurs doivent être mises en cache.
cacheNamespace string Un groupe de balises API spécifique contenant des paramètres mis en cache associés.
connectionId string L'ID d'un VpcLinkpour l'intégration privée.
connectionType string Type de connexion de l'intégration. La valeur valide est "VPC_LINK" pour l'intégration privée ou "INTERNET", dans le cas contraire.
credentials string

Pour les informations d'identification AWS IAM basées sur les rôles, spécifiez ARN le rôle appropriéIAM. Si elles ne sont pas spécifiées, les informations d'identification correspondent par défaut à des autorisations basées sur les ressources qui doivent être ajoutées manuellement pour permettre l'accès API à la ressource. Pour de plus amples informations, veuillez consulter Accord d'autorisations à l'aide d'une stratégie de ressources.

Remarque : Lorsque vous utilisez des IAM informations d'identification, assurez-vous que les points de terminaison AWS STS régionaux sont activés pour la région dans laquelle ils API sont déployés pour de meilleures performances.

contentHandling string Types de conversion de l'encodage des charges utiles de la demande. Les valeurs valides sont 1) CONVERT_TO_TEXT, pour la conversion d'une charge utile binaire en chaîne encodée en base64 ou pour la conversion d'une charge utile de texte en chaîne encodée en utf-8 ou pour le passage de la charge utile de texte en mode natif sans modification, et 2) CONVERT_TO_BINARY, pour la conversion d'une charge utile de texte en bloc encodé en base64 ou le passage par une charge utile binaire en mode natif sans modification.
httpMethod string HTTPMéthode utilisée dans la demande d'intégration. Pour les appels de fonction Lambda, la valeur doit être POST.
integrationSubtype string Spécifie le sous-type d'intégration pour une intégration AWS de services. Pris en charge uniquement pour HTTPAPIs. Pour connaître les sous-types d'intégration pris en charge, veuillez consulter Référence de sous-type d'intégration.
passthroughBehavior string Spécifie comment une charge utile de demande d'un type de contenu non mappé est transmise par le biais de la demande d'intégration sans modification. Les valeurs prises en charge sont when_no_templates, when_no_match et never. Pour plus d'informations, consultez la section Intégration. passthroughBehavior.
payloadFormatVersion string Spécifie le format de la charge utile envoyée à une intégration. Nécessaire pour HTTPAPIs. Pour HTTPAPIs, les valeurs prises en charge pour les intégrations de proxy Lambda sont et. 1.0 2.0 Pour toutes les autres intégrations, 1.0 est la seule valeur prise en charge. Pour en savoir plus, consultez Création d'intégrations de AWS Lambda proxy pour HTTP APIs dans Gateway API et Référence de sous-type d'intégration.
requestParameters x-amazon-apigateway-integration. requestParameters objet

Pour RESTAPIs, spécifie les mappages entre les paramètres de demande de méthode et les paramètres de demande d'intégration. Les paramètres de demande pris en charge sont querystring, path, header et body.

En effet HTTPAPIs, les paramètres de demande sont une carte clé-valeur spécifiant les paramètres qui sont transmis aux AWS_PROXY intégrations avec un paramètre spécifié. integrationSubtype Vous pouvez fournir des valeurs statiques ou des données de demande de carte, des variables intermédiaires ou des variables de contexte évaluées au moment de l'exécution. Pour en savoir plus, consultez la section Créez des intégrations de AWS services pour HTTP APIs dans Gateway API.

requestTemplates x-amazon-apigateway-integration. requestTemplates objet Modèles de mappage pour une charge utile de demande de MIME types spécifiés.
responses x-amazon-apigateway-integrationobjet .responses Définit les réponses de la méthode et spécifie les mappages de paramètres souhaités ou les mappages de charge utile des réponses d'intégration aux réponses de méthode.
timeoutInMillis integer Délais d'expiration de l'intégration compris entre 50 ms et 29 000 ms.
type string

Type d'intégration au backend spécifié. Les valeurs valides sont :

  • httpouhttp_proxy, pour une intégration avec un HTTP backend.

  • aws_proxy, pour l'intégration avec les fonctions AWS Lambda.

  • aws, pour l'intégration aux fonctions AWS Lambda ou à d'autres AWS services, tels qu'Amazon DynamoDB, Amazon Simple Notification Service ou Amazon Simple Queue Service.

  • mock, pour une intégration à API Gateway sans invoquer aucun backend.

Pour de plus amples informations sur les types d'intégrations, veuillez consulter integration:type.

tlsConfig x-amazon-apigateway-integration. tlsConfig objet Spécifie la TLS configuration d'une intégration.
uri string Le point URI de terminaison du backend. Pour les intégrations de ce aws type, il s'agit d'une ARN valeur. Pour l'HTTPintégration, il s'agit du HTTP point URL de terminaison, y compris le http schéma https or.

x-amazon-apigateway-integration exemples

En HTTP APIs effet, vous pouvez définir des intégrations dans la section des composants de votre API définition ouverte. Pour en savoir plus, consultez la section x-amazon-apigateway-integrations objet.

"x-amazon-apigateway-integration": { "$ref": "#/components/x-amazon-apigateway-integrations/integration1" }

L'exemple suivant crée une intégration avec une fonction Lambda. À des fins de démonstration, les exemples de modèles responseTemplates de mappage présentés dans requestTemplates et parmi les exemples ci-dessous sont supposés s'appliquer à la charge utile JSON formatée suivante : { "name":"value_1", "key":"value_2", "redirect": {"url" :"..."} } pour générer une JSON sortie de { "stage":"value_1", "user-id":"value_2" } ou une XML sortie de. <stage>value_1</stage>

"x-amazon-apigateway-integration" : { "type" : "aws", "uri" : "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:012345678901:function:HelloWorld/invocations", "httpMethod" : "POST", "credentials" : "arn:aws:iam::012345678901:role/apigateway-invoke-lambda-exec-role", "requestTemplates" : { "application/json" : "#set ($root=$input.path('$')) { \"stage\": \"$root.name\", \"user-id\": \"$root.key\" }", "application/xml" : "#set ($root=$input.path('$')) <stage>$root.name</stage> " }, "requestParameters" : { "integration.request.path.stage" : "method.request.querystring.version", "integration.request.querystring.provider" : "method.request.querystring.vendor" }, "cacheNamespace" : "cache namespace", "cacheKeyParameters" : [], "responses" : { "2\\d{2}" : { "statusCode" : "200", "responseParameters" : { "method.response.header.requestId" : "integration.response.header.cid" }, "responseTemplates" : { "application/json" : "#set ($root=$input.path('$')) { \"stage\": \"$root.name\", \"user-id\": \"$root.key\" }", "application/xml" : "#set ($root=$input.path('$')) <stage>$root.name</stage> " } }, "302" : { "statusCode" : "302", "responseParameters" : { "method.response.header.Location" : "integration.response.body.redirect.url" } }, "default" : { "statusCode" : "400", "responseParameters" : { "method.response.header.test-method-response-header" : "'static value'" } } } }

Notez que les guillemets («) pour la JSON chaîne dans les modèles de mappage doivent être exempts de chaînes (\ »).