Richten Sie eine HTTP-Proxyintegration mit Payload-Response-Streaming in API Gateway ein - 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.

Richten Sie eine HTTP-Proxyintegration mit Payload-Response-Streaming in API Gateway ein

Wenn Sie das Antwort-Payload-Streaming einrichten, geben Sie den Antwortübertragungsmodus in der Integrationsanforderung Ihrer Methode an. Sie konfigurieren diese Einstellungen in der Integrationsanfrage, um zu steuern, wie sich API Gateway vor und während der Integrationsantwort verhält. Wenn Sie Antwort-Streaming verwenden, können Sie das Integrations-Timeout auf bis zu 15 Minuten konfigurieren.

Wenn Sie Payload Response Streaming mit einer HTTP_PROXY Integration verwenden, sendet API Gateway den HTTP-Antwortstatuscode oder irgendwelche HTTP-Antwort-Header erst, wenn es alle Header vollständig empfangen hat.

Erstellen Sie eine HTTP-Proxy-Integration mit Payload-Antwort-Streaming

Das folgende Verfahren zeigt Ihnen, wie Sie eine neue API mit der responseTransferMode Einstellung auf STREAM importieren. Wenn Sie über eine bestehende Integrations-API verfügen und diese ändern möchtenresponseTransferMode, finden Sie weitere Informationen unterAktualisieren Sie den Antwortübertragungsmodus für eine HTTP-Proxyintegration.

AWS-Managementkonsole
So erstellen Sie eine HTTP-Proxyintegration mit Payload-Response-Streaming
  1. Melden Sie sich bei der API Gateway Gateway-Konsole unter https://console.aws.amazon.com/apigatewayan.

  2. Wählen Sie eine REST-API aus.

  3. Wählen Sie Create Resource (Ressource erstellen) aus.

  4. Geben Sie für Resource name (Ressourcenname) streaming ein.

  5. Wählen Sie Create Resource (Ressource erstellen) aus.

  6. Wählen Sie die Ressource /streaming aus und wählen Sie Methode erstellen aus.

  7. Wählen Sie als Methodentyp die Option ANY aus.

  8. Wählen Sie unter Integrationstyp die Option HTTP aus.

  9. Wählen Sie HTTP-Proxyintegration.

  10. Wählen Sie für den Antwortübertragungsmodus Stream aus.

  11. Wählen Sie für die HTTP-Methode eine Methode aus.

  12. Geben Sie für Endpunkt-URL einen Integrationsendpunkt ein. Stellen Sie sicher, dass Sie einen Endpunkt wählen, der eine große Nutzlast erzeugt, die zu Ihnen zurückgestreamt wird.

  13. Wählen Sie Methode erstellen aus.

Nachdem Sie Ihre Methode erstellt haben, stellen Sie Ihre API bereit.

Stellen Sie Ihre API bereit
  1. Klicken Sie auf Deploy API.

  2. Wählen Sie für Stufe die Option Neue Stufe aus.

  3. Geben Sie für Stage name (Stufenname) prod ein.

  4. (Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.

  5. Wählen Sie Bereitstellen.

AWS CLI
Um eine neue API mit Payload-Response-Streaming zu erstellen
  1. Kopieren Sie die folgende Open API-Datei und speichern Sie sie dann unter. ResponseStreamDemoSwagger.yaml In dieser Datei responseTransferMode ist auf eingestelltSTREAM. Der Integrationsendpunkt ist auf eingestellthttps://example.com, wir empfehlen jedoch, ihn so zu ändern, dass er eine große Nutzlast erzeugt, die an Sie zurückgestreamt wird.

    openapi: "3.0.1" info: title: "ResponseStreamingDemo" version: "2025-04-28T17:28:25Z" servers: - url: "{basePath}" variables: basePath: default: "prod" paths: /streaming: get: x-amazon-apigateway-integration: httpMethod: "GET" uri: "https://example.com" type: "http_proxy" timeoutInMillis: 900000 responseTransferMode: "STREAM"
  2. Verwenden Sie den folgenden import-rest-api Befehl, um Ihre OpenAPI-Definition zu importieren:

    aws apigateway import-rest-api \ --body 'fileb://~/ResponseStreamDemoSwagger.yaml' \ --parameters endpointConfigurationTypes=REGIONAL \ --region us-west-1
  3. Verwenden Sie den folgenden create-deployment Befehl, um Ihre neue API in einer Phase bereitzustellen:

    aws apigateway create-deployment \ --rest-api-id a1b2c3 \ --stage-name prod \ --region us-west-1

Aktualisieren Sie den Antwortübertragungsmodus für eine HTTP-Proxyintegration

Das folgende Verfahren zeigt, wie der Antwortübertragungsmodus für eine HTTP-Proxyintegration aktualisiert wird.

AWS-Managementkonsole
Um den Antwortübertragungsmodus für eine HTTP-Proxyintegration zu aktualisieren
  1. Melden Sie sich bei der API Gateway Gateway-Konsole unter https://console.aws.amazon.com/apigatewayan.

  2. Wählen Sie eine REST-API aus.

  3. Wählen Sie eine Methode aus.

  4. Klicken Sie auf der Registerkarte Integrationsanfrage unter Einstellungen für Integrationsanfragen auf Bearbeiten.

  5. Wählen Sie für den Antwortübertragungsmodus Stream aus.

  6. Wählen Sie Speichern.

Nachdem Sie Ihre Methode aktualisiert haben, stellen Sie Ihre API bereit.

Stellen Sie Ihre API bereit
  1. Klicken Sie auf Deploy API.

  2. Wählen Sie für Stufe die Option Neue Stufe aus.

  3. Geben Sie für Stage name (Stufenname) prod ein.

  4. (Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.

  5. Wählen Sie Bereitstellen.

AWS CLI

Der folgende update-integration Befehl aktualisiert den Übertragungsmodus einer Integration von BUFFERED bisSTREAM. Für alle vorhandenen APIs Integrationen ist der Antwortübertragungsmodus für alle Integrationen auf BUFFERED eingestellt.

aws apigateway update-integration \ --rest-api-id a1b2c3 \ --resource-id aaa111 \ --http-method GET \ --patch-operations "op='replace',path='/responseTransferMode',value=STREAM" \ --region us-west-1

Sie müssen Ihre API erneut bereitstellen, damit die Änderungen wirksam werden. Wenn Sie das Integrations-Timeout angepasst haben, wird dieser Timeout-Wert entfernt, da API Gateway Ihre Antwort bis zu 5 Minuten lang streamt.

Der folgende update-integration Befehl aktualisiert den Übertragungsmodus einer Integration von bisSTREAM: BUFFERED

aws apigateway update-integration \ --rest-api-id a1b2c3 \ --resource-id aaa111 \ --http-method GET \ --patch-operations "op='replace',path='/responseTransferMode',value=BUFFERED" \ --region us-west-1

Sie müssen Ihre API erneut bereitstellen, damit die Änderungen wirksam werden.