Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
x-amazon-apigateway-integration Objekt
Gibt die Details der für diese Methode verwendeten Backend-Integration an. Diese Erweiterung ist eine erweiterte Eigenschaft des Open API Operation-Objekts
Name der Eigenschaft | Typ | Beschreibung |
---|---|---|
cacheKeyParameters |
Ein Array von string |
Eine Liste an Anforderungsparametern, deren Werte zwischengespeichert werden sollen. |
cacheNamespace |
string |
Eine API -spezifische Tag-Gruppe verwandter zwischengespeicherter Parameter. |
connectionId |
string |
Die ID von a VpcLinkfür die private Integration. |
connectionType |
string |
Der Verbindungstyp der Integration. Der gültige Wert ist "VPC_LINK" für die private Integration oder andernfalls "INTERNET" . |
credentials |
string |
Geben Sie für AWS IAM rollenbasierte Anmeldeinformationen die ARN einer entsprechenden IAM Rolle an. Falls nicht angegeben, werden für die Anmeldeinformationen standardmäßig ressourcenbasierte Berechtigungen verwendet, die manuell hinzugefügt werden müssen, damit sie auf die API Ressource zugreifen können. Weitere Informationen finden Sie unter Gewähren von Berechtigungen mit einer Ressourcenrichtlinie. Hinweis: Stellen Sie bei der Verwendung von IAM Anmeldeinformationen sicher, dass AWS STSregionale Endpunkte für die Region aktiviert sind, in der diese bereitgestellt werden, um API eine optimale Leistung zu erzielen. |
contentHandling |
string |
Fordern Sie Nutzlast-Kodierungs-Umwandlungstypen an. Gültige Werte sind 1) CONVERT_TO_TEXT für die Umwandlung einer binären Nutzlast in eine base64-kodierte Zeichenfolge oder die Umwandlung einer Textnutzlast in eine utf-8 -kodierte Zeichenfolge oder die native Weiterleitung der Textnutzlast ohne Änderung und 2) CONVERT_TO_BINARY für die Umwandlung einer Textnutzlast in einen base64-dekodierten Blob oder die native Weiterleitung einer binären Nutzlast ohne Änderung. |
httpMethod |
string |
Die in der Integrationsanfrage verwendete HTTP Methode. Für Lambda-Funktionsaufrufe muss der Wert sei POST . |
integrationSubtype |
string |
Gibt den Integrationsuntertyp für eine AWS Serviceintegration an. Wird nur unterstützt für HTTPAPIs. Unterstützte Integration-Subtypen finden Sie unter Integration-Subtypreferenz. |
passthroughBehavior |
string |
Gibt an, wie eine Anforderungsnutzlast eines nicht zugeordneten Inhaltstyps unverändert an die Integrationsanforderung weitergeleitet wurde. Unterstützte Werte sind when_no_templates , when_no_match und never . Weitere Informationen finden Sie unter Integration. passthroughBehavior. |
payloadFormatVersion |
string |
Gibt das Format der an eine Integration gesendeten Nutzlast an. Erforderlich für HTTPAPIs. Für sind HTTP APIs die unterstützten Werte für Lambda-Proxyintegrationen 1.0 und. 2.0 Für alle anderen Integrationen ist 1.0 der einzige unterstützte Wert. Weitere Informationen hierzu finden Sie unter Erstellen Sie AWS Lambda Proxy-Integrationen für HTTP APIs in Gateway API und Integration-Subtypreferenz. |
requestParameters |
x-amazon-apigateway-integration. requestParameters Objekt | For REST APIs gibt Zuordnungen von Methodenanforderungsparametern zu Integrationsanforderungsparametern an. Die unterstützten Anforderungsparameter sind Denn Anforderungsparameter sind eine Schlüssel-Wert-Zuordnung HTTPAPIs, die Parameter spezifiziert, die an |
requestTemplates |
x-amazon-apigateway-integration. requestTemplates Objekt | Zuordnungsvorlagen für eine Anforderungs-Payload bestimmter Typen. MIME |
responses |
x-amazon-apigateway-integration.responses-Objekt | Definiert die Antworten der Methode und gibt gewünschte Parameter-Mappings oder Nutzlast-Mappings von Integrationsantworten auf Methodenantworten an. |
timeoutInMillis |
integer |
Integrationszeitüberschreitungen zwischen 50 ms und 29.000 ms. |
type |
string |
Der Typ der Integration mit dem angegebenen Backend. Gültige Werte für sind:
Weitere Informationen über die Integrationstypen finden Sie unter integration:type. |
tlsConfig |
x-amazon-apigateway-integration. tlsConfig Objekt | Gibt die TLS Konfiguration für eine Integration an. |
uri |
string |
Der Endpunkt URI des Backends. Für Integrationen dieses aws Typs ist dies ein ARN Wert. Bei der HTTP Integration ist dies der Wert URL des HTTP Endpunkts einschließlich des https http Oder-Schemas. |
x-amazon-apigateway-integration Beispiele
Für HTTP APIs können Sie Integrationen im Abschnitt Komponenten Ihrer API Open-Definition definieren. Weitere Informationen hierzu finden Sie unter x-amazon-apigateway-integrations Objekt.
"x-amazon-apigateway-integration": { "$ref": "#/components/x-amazon-apigateway-integrations/
integration1
" }
Im folgenden Beispiel wird eine Integration mit einer Lambda-Funktion erstellt. Zu Demonstrationszwecken wird davon ausgegangen, dass die in requestTemplates
und responseTemplates
den folgenden Beispielen gezeigten Beispiel-Mapping-Vorlagen für die folgende JSON -formatierte Nutzlast gelten: {
"name":"value_1", "key":"value_2", "redirect": {"url" :"..."} }
zur Generierung einer JSON Ausgabe von { "stage":"value_1", "user-id":"value_2" }
oder einer Ausgabe von. XML <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'
" } } } }
Beachten Sie, dass doppelte Anführungszeichen („) für die JSON Zeichenfolge in den Mapping-Vorlagen mit Zeichenketten-Escape-Zeichen (\“) versehen werden müssen.