Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

WebSocket-Auswahlausdrücke

Fokusmodus
WebSocket-Auswahlausdrücke - Amazon API Gateway

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.

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.

API Gateway verwendet Auswahlausdrücke als Möglichkeit, den Anfrage- und Antwortkontext auszuwerten und einen Schlüssel zu erzeugen. Anhand des Schlüssels wird dann aus einem Satz möglicher Werte ausgewählt, die gewöhnlich von Ihnen, dem API-Entwickler, bereitgestellt werden. Der genaue Satz der unterstützten Variablen ist vom jeweiligen Ausdruck abhängig. Jeder Ausdruck wird nachstehend weiter erörtert.

Für alle Ausdrücke folgt die Sprache dem gleichen Satz von Regeln:

  • Einer Variable wird vorangestell "$".

  • Variablen können explizit durch geschweifte Klammern abgegrenzt werden, z. ., "${request.body.version}-beta".

  • Mehrere Variablen werden unterstützt, aber die Auswertung findet nur einmal statt (keine rekursive Auswertung).

  • Ein Dollarzeichen ($) kann durch die Escape-Zeichen "\" geschützt werden. Dies ist besonders nützlich, wenn ein Ausdruck definiert wird, der dem reservierten $default-Schlüssel zugeordnet wird, z. B. "\$default".

  • In einigen Fällen ist ein Musterformat erforderlich. In diesem Fall sollte der Ausdruck entsprechend "/"-Statuscodes mit Schrägstrichen ("/2\d\d/") verpackt werden, z. B. 2XX.

Routenantwort-Auswahlausdrücke

Eine Routenantwort wird für die Modellierung einer Antwort vom Backend zum Client verwendet. Für WebSocket-APIs ist eine Routenantwort optional. Wenn definiert, zeigt das API Gateway, dass es bei Empfang einer WebSocket-Nachricht eine Antwort an einen Client zurücksenden soll.

Die Auswertung des Routenantwort-Auswahlausdrucks ergibt einen Routenantwort-Schlüssel. Zukünftig wird dieser Schlüssel zur Auswahl unter einer der mit der API verknüpften RouteResponses dienen. Zurzeit wird jedoch nur der Schlüssel $default unterstützt.

API-Schlüssel-Auswahlausdrücke

Dieser Ausdruck wird ausgewertet, wenn der Service bestimmt, dass mit der vorliegenden Anforderung nur fortgefahren werden soll, wenn der Client einen gültigen API-Schlüssel bereitstellt.

Zurzeit werden als einzigen Werte $request.header.x-api-key und $context.authorizer.usageIdentifierKey unterstützt.

API-Zuordnungs-Auswahlausdrücke

Dieser Ausdruck wird ausgewertet, um zu bestimmen, welche API-Stufe bei einer über eine benutzerdefinierte Domäne gestellten Anforderung auszuwählen ist.

Derzeit wird als einziger Wert unterstütz $request.basepath.

Zusammenfassung der WebSocket-Auswahlausdrücke

In der folgenden Tabelle finden Sie eine Zusammenfassung der Anwendungsfälle für Auswahlausdrücke in WebSocket-APIs:

Auswahlausdrücke Ausgewertet auf Schlüssel für Hinweise Beispielanwendungsfall
Api.RouteSelectionExpression Route.RouteKey $default wird als Catch-all-Route unterstützt. Leitet WebSocket-Nachrichten je nach Kontext einer Client-Anforderung weiter.
Route.ModelSelectionExpression Schlüssel für Route.RequestModels

Optional.

Bei Angabe für Nicht-Proxy-Integrationen findet eine Modellvalidierung statt.

$default wird als Catch-all-Route unterstützt.

Führt die Anforderungsvalidierung dynamisch innerhalb derselben Route aus.
Integration.TemplateSelectionExpression Schlüssel für Integration.RequestTemplates

Optional.

Kann für Nicht-Proxy-Integrationen zum Bearbeiten von eingehenden Nutzlasten bereitgestellt werden.

${request.body.jsonPath}Unterstützte Werte sind und statische Werte.

$default wird als Catch-all-Route unterstützt.

Dient zur Bearbeitung der Anforderung der aufrufenden Methode je nach den dynamischen Eigenschaften der Anforderung.
Integration.IntegrationResponseSelectionExpression IntegrationResponse.IntegrationResponseKey

Optional. Kann für Nicht-Proxy-Integrationen bereitgestellt werden.

Dient als Mustervergleich für Fehlermeldungen (von Lambda) oder Statuscodes (von HTTP-Integrationen).

$default ist erforderlich, damit Nicht-Proxy-Integrationen als Catch-All für erfolgreiche Antworten fungieren.

Dient zum Bearbeiten der Antwort vom Backend.

Wählen Sie, welche Aktion basierend auf der dynamischen Antwort des Backends ausgeführt werden soll (z. B. unterschiedliche Behandlung bestimmter Fehler).

IntegrationResponse.TemplateSelectionExpression Schlüssel für IntegrationResponse.ResponseTemplates Optional. Kann für Nicht-Proxy-Integrationen bereitgestellt werden.

$default wird unterstützt.

In einigen Fällen kann eine dynamische Eigenschaft der Antwort verschiedene Transformationen innerhalb derselben Route und zugehörigen Integration vorgeben.

${request.body.jsonPath}, ${integration.response.statuscode}, ${integration.response.header.headerName}, ${integration.response.multivalueheader.headerName}, Unterstützte Werte sind , , , und statische Werte.

$default wird als Catch-all-Route unterstützt.

Route.RouteResponseSelectionExpression RouteResponse.RouteResponseKey

Sollte angegeben werden, um für eine WebSocket-Route die bidirektionale Kommunikation einzuleiten.

Zurzeit ist dieser Wert ausschließlich auf $default eingeschränkt.

RouteResponse.ModelSelectionExpression Schlüssel für RouteResponse.RequestModels Wird derzeit nicht unterstützt.

Auf dieser Seite

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.