InvokeWithResponseStream - AWS Lambda

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.

InvokeWithResponseStream

Konfigurieren Sie Ihre Lambda-Funktionen so, dass sie Antwort-Nutzlasten an Clients zurückstreamen. Weitere Informationen finden Sie unter Konfigurieren einer Lambda-Funktion zum Streamen von Antworten.

Diese Operation erfordert die Berechtigung für die Aktion lambda:InvokeFunction . Weitere Informationen zum Einrichten von Berechtigungen für kontoübergreifende Aufrufe finden Sie unter Gewähren des Funktionszugriffs für andere Konten.

Anforderungssyntax

POST /2021-11-15/functions/FunctionName/response-streaming-invocations?Qualifier=Qualifier HTTP/1.1 X-Amz-Invocation-Type: InvocationType X-Amz-Log-Type: LogType X-Amz-Client-Context: ClientContext Payload

URI-Anfrageparameter

Die Anforderung verwendet die folgenden URI-Parameter.

ClientContext

Bis zu 3 583 Byte base64-codierter Daten über den aufrufenden Client, die an die Funktion im Kontextobjekt übergeben werden.

FunctionName

Der Name der Lambda-Funktion.

Name Formate
  • Funktionsnamemy-function.

  • Funktions-ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partielle ARN123456789012:function:my-function.

Die Längenbeschränkung gilt nur für den gesamten ARN. Wenn Sie nur den Funktionsnamen angeben, ist dieser auf 64 Zeichen begrenzt.

Längenbeschränkungen: Minimale Länge von 1. Höchstlänge = 170 Zeichen.

Pattern: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_\.]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?

Erforderlich: Ja

InvocationType

Wählen Sie eine der folgenden Optionen aus:

  • RequestResponse (Standard) – Ruft die Funktion synchron auf. Lassen Sie die Verbindung geöffnet, bis die Funktion eine Antwort zurückgibt oder das Zeitlimit überschritten wird. Die API-Operations-Antwort enthält die Funktionsantwort und zusätzliche Daten.

  • DryRun – Validieren Sie Parameterwerte und vergewissern Sie sich, dass der IAM-Benutzer oder die IAM-Rolle berechtigt ist, die Funktion aufzurufen.

Zulässige Werte: RequestResponse | DryRun

LogType

Auf Tail setzen, um das Ausführungsprotokoll in die Antwort einzuschließen. Gilt nur für synchron aufgerufene Funktionen.

Zulässige Werte: None | Tail

Qualifier

Der Aliasname.

Längenbeschränkungen: Minimale Länge beträgt 1 Zeichen. Maximale Länge beträgt 128 Zeichen.

Pattern: (|[a-zA-Z0-9$_-]+)

Anforderungstext

Die Anfrage akzeptiert die folgenden Binärdaten.

Payload

JSON zum Bereitstellen Ihrer Lambda-Funktion als Eingabe.

Sie können das JSON direkt eingeben. Zum Beispiel --payload '{ "key": "value" }'. Sie können auch einen Dateipfad angeben. Beispiel: --payload file://payload.json

Antwortsyntax

HTTP/1.1 StatusCode X-Amz-Executed-Version: ExecutedVersion Content-Type: ResponseStreamContentType Content-type: application/json { "InvokeComplete": { "ErrorCode": "string", "ErrorDetails": "string", "LogResult": "string" }, "PayloadChunk": { "Payload": blob } }

Antwortelemente

Wenn die Aktion erfolgreich ist, sendet der Dienst die folgende HTTP-Antwort zurück.

StatusCode

Bei einer erfolgreichen Anfrage liegt der HTTP-Statuscode im Bereich 200. Für den RequestResponse-Aufruftyp lautet der Statuscode 200. Für den DryRun-Aufruftyp lautet der Statuscode 204.

Die Antwort gibt die folgenden HTTP-Header zurück.

ExecutedVersion

Die Version der Funktion, die gerade ausgeführt wird. Wenn Sie eine Funktion mit einem Alias aufrufen, gibt dies an, in welche Version der Alias aufgelöst wurde.

Längenbeschränkungen: Minimale Länge von 1. Maximale Länge beträgt 1024 Zeichen.

Pattern: (\$LATEST|[0-9]+)

ResponseStreamContentType

Die Art der Daten, die der Stream zurückgibt.

Die folgenden Daten werden vom Service im JSON-Format zurückgegeben.

InvokeComplete

Ein Objekt, das zurückgegeben wird, wenn der Stream beendet ist und alle Nutzlast-Teile zurückgegeben wurden.

Typ: InvokeWithResponseStreamCompleteEvent Objekt

PayloadChunk

Ein Teil der Nutzlast der gestreamten Antwort.

Typ: InvokeResponseStreamUpdate Objekt

Fehler

Weitere Informationen zu den allgemeinen Fehlern, die bei allen Aktionen zurückgegeben werden, finden Sie unter Häufige Fehler.

EC2AccessDeniedException

Benötigen Sie zusätzliche Berechtigungen zum Konfigurieren von VPC-Einstellungen.

HTTP-Statuscode: 502

EC2ThrottledException

Amazon EC2 hat AWS Lambda während der Lambda-Funktionsinitialisierung unter Verwendung der für die Funktion bereitgestellten Ausführungsrolle gedrosselt.

HTTP-Statuscode: 502

EC2UnexpectedException

AWS Lambda hat beim Einrichten der Lambda-Funktion eine unerwartete Amazon-EC2-Client-Ausnahme erhalten.

HTTP-Statuscode: 502

EFSIOException

Beim Lesen oder Schreiben in ein angeschlossenes Dateisystem ist ein Fehler aufgetreten.

HTTP-Statuscode: 410

EFSMountConnectivityException

Die Lambda-Funktion konnte keine Netzwerkverbindung zum konfigurierten Dateisystem herstellen.

HTTP-Statuscode: 408

EFSMountFailureException

Die Lambda-Funktion konnte das konfigurierte Dateisystem aufgrund eines Berechtigungs- oder Konfigurationsproblems nicht mounten.

HTTP Status Code: 403

EFSMountTimeoutException

Die Lambda-Funktion hat eine Netzwerkverbindung zum konfigurierten Dateisystem hergestellt, aber beim Mount-Vorgang ist das Zeitlimit überschritten.

HTTP-Statuscode: 408

ENILimitReachedException

AWS Lambda konnte keine Elastic-Network-Schnittstelle in der VPC erstellen, die als Teil der Lambda-Funktionskonfiguration angegeben wurde, da das Limit für Netzwerkschnittstellen erreicht wurde. Weitere Informationen finden Sie unter Lambda-Kontingente.

HTTP-Statuscode: 502

InvalidParameterValueException

Einer der Parameter in der Anfrage ist ungültig.

HTTP Status Code: 400

InvalidRequestContentException

Der Anforderungstext konnte nicht als JSON analysiert werden.

HTTP Status Code: 400

InvalidRuntimeException

Die angegebene Laufzeit oder Laufzeitversion wird nicht unterstützt.

HTTP-Statuscode: 502

InvalidSecurityGroupIDException

Die in der VPC-Konfiguration der Lambda-Funktion angegebene Sicherheitsgruppen-ID ist ungültig.

HTTP-Statuscode: 502

InvalidSubnetIDException

Die in der VPC-Konfiguration der Lambda-Funktion angegebene Subnetz-ID ist ungültig.

HTTP-Statuscode: 502

InvalidZipFileException

AWS Lambda konnte das Bereitstellungspaket nicht entpacken.

HTTP-Statuscode: 502

KMSAccessDeniedException

Lambda konnte die Umgebungsvariablen nicht entschlüsseln, da der AWS KMS-Zugriff verweigert wurde. Überprüfen Sie die KMS-Berechtigungen der Lambda-Funktion.

HTTP-Statuscode: 502

KMSDisabledException

Lambda konnte die Umgebungsvariablen nicht entschlüsseln, da das verwendete AWS KMS key deaktiviert ist. Überprüfen Sie die Einstellungen des KMS-Schlüssels der Lambda-Funktion.

HTTP-Statuscode: 502

KMSInvalidStateException

Lambda konnte die Umgebungsvariablen nicht entschlüsseln, da der Status des verwendeten AWS KMS key für Decrypt nicht gültig ist. Überprüfen Sie die KMS-Schlüsseleinstellungen der Funktion.

HTTP-Statuscode: 502

KMSNotFoundException

Lambda konnte die Umgebungsvariablen nicht entschlüsseln, da AWS KMS key nicht gefunden wurde. Überprüfen Sie die KMS-Schlüsseleinstellungen der Funktion.

HTTP-Statuscode: 502

RecursiveInvocationException

Lambda hat erkannt, dass Ihre Funktion in einer rekursiven Schleife mit anderen AWS-Ressourcen aufgerufen wird, und den Aufruf Ihrer Funktion gestoppt.

HTTP Status Code: 400

RequestTooLargeException

Die Anfragenutzlast hat das JSON-Eingabekontingent des Invoke-Anfragetexts überschritten. Weitere Informationen finden Sie unter Lambda-Kontingente.

HTTP-Statuscode: 413

ResourceConflictException

Die Ressource ist bereits vorhanden, oder ein anderer Vorgang ist im Gange.

HTTP-Statuscode: 409

ResourceNotFoundException

Die in der Anforderung angegebene Ressource ist nicht vorhanden.

HTTP Status Code: 404

ResourceNotReadyException

Die Funktion ist inaktiv und ihre VPC Verbindung ist nicht mehr verfügbar. Warten Sie, bis die VPC Verbindung wieder hergestellt wurde und versuchen Sie es erneut.

HTTP-Statuscode: 502

ServiceException

Beim Service AWS Lambda trat ein interner Fehler auf.

HTTP Status Code: 500

SnapStartException

Beim afterRestore()-Laufzeit-Hook ist ein Fehler aufgetreten. Weitere Informationen finden Sie in den Amazon- CloudWatch Protokollen.

HTTP Status Code: 400

SnapStartNotReadyException

Lambda initialisiert Ihre Funktion. Sie können die Funktion aufrufen, wenn sich der Funktionsstatus auf Active ändert.

HTTP-Statuscode: 409

SnapStartTimeoutException

Lambda konnte den Snapshot nicht innerhalb des Timeout-Limits wiederherstellen.

HTTP-Statuscode: 408

SubnetIPAddressLimitReachedException

AWS Lambda konnte den VPC-Zugriff für die Lambda-Funktion nicht einrichten, da eines oder mehrere konfigurierte Subnetze keine verfügbaren IP-Adressen haben.

HTTP-Statuscode: 502

TooManyRequestsException

Der Durchsatz einer Anforderung wurde überschritten. Weitere Informationen finden Sie unter Lambda-Kontingente.

HTTP-Statuscode: 429

UnsupportedMediaTypeException

Der Inhaltstyp des Invoke-Anforderungstaxts ist nicht JSON.

HTTP-Statuscode: 415

Weitere Informationen finden Sie unter:

Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS-SDKs finden Sie unter: