View a markdown version of this page

HTTP-Anfragen und -Antworten - 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.

HTTP-Anfragen und -Antworten

Ein Webfunktions-Endpunkt akzeptiert HTTP/1.1 Anfragen und leitet sie an Ihre Anwendung weiter. HTTP/1.1 Lambda lehnt HTTP/1.0 Anfragen mit HTTP 505 ab (HTTP-Version wird nicht unterstützt). Lambda behält die Anforderungsmethode, den Pfad, die Abfragezeichenfolge, den Hauptteil und die meisten Header bei. Es entfernt oder ändert Header, die die Verbindung zwischen dem Client und dem Endpunkt beschreiben. Außerdem werden Header hinzugefügt, die den Anforderungskontext bereitstellen.

HTTP-Methoden

Webfunktions-Endpunkte unterstützenGET,HEAD,POST,, PUT PATCHOPTIONS, und. DELETE

Lambda lehnt eine nicht unterstützte Methode mit einer HTTP 400-Antwort ab, bevor die Anfrage Ihre Anwendung erreicht.

Anfordern von Headern

Lambda entfernt die folgenden Header, bevor es eine Anfrage weiterleitet:

  • Connection, Keep-Alive, Upgrade, Expect, TE, und Trailer

  • Proxy-Authenticate, Proxy-Authorization und Proxy-Connection

  • X-Real-IP

  • X-HTTP-Method-Override, X-HTTP-Method und X-Method-Override

  • Header, deren Namen mit beginnen, und Headerlambda-web-, die im Header benannt sind Connection

Lambda validiert oder ändert die folgenden Header.

Header Behavior
Host Muss der Domainname des Webfunktions-Endpunkts (z. B.bcdfghjklmnpqrst.b7t.lambda-web.us-east-1.on.aws) in Kleinbuchstaben und ohne Port sein. Lambda verwendet diesen Wert und gibt HTTP 404 zurück, wenn er keinem Endpunkt entspricht, oder HTTP 400, wenn der Header fehlt. Ihre Anwendung erhält den Domainnamen des Endpunkts.
X-Forwarded-For Lambda fügt die IP-Adresse des verbindenden Clients als letzten Wert an. Frühere Werte stammen vom Client und wurden nicht validiert. Wenn sich eine CloudFront Amazon-Distribution vor dem Endpunkt befindet, ist der letzte Wert eine CloudFront Adresse.

Lambda leitet X-Forwarded-Host vom Client ohne Überprüfung weiter. Verwenden Sie es nicht, um Weiterleitungen, absolute URLs oder hostbasierte Autorisierungen zu erstellen, es sei denn, eine Eingangstür, die Sie kontrollieren, legt dies fest.

Lambda fügt die folgenden Header hinzu.

Header Description
lambda-web-request-id Der Bezeichner, den Lambda der Anfrage zuweist.
lambda-web-endpoint-name Der Name des Endpunkts, der die Anfrage erhalten hat.

Bei Endpunkten, die die IAM-Autorisierung verwenden, validiert Lambda die signierte Anfrage und entfernt den Authorization Header, bevor sie weitergeleitet wird. Weitere Informationen finden Sie unter Verwenden Sie den IamAuthAuthentifizierungstyp.

Antwort-Header

Lambda entfernt verbindungsbezogene Header und HTTP-Trailer aus der Antwort Ihrer Anwendung. Abhängig vom Ergebnis der Anfrage kann Lambda die folgenden Header hinzufügen.

Header Description
lambda-web-request-id Die Anforderungs-ID. Verwenden Sie ihn, um eine Antwort mit Anwendungs- und Systemprotokollen zu korrelieren.
lambda-web-logstream Der Amazon CloudWatch Logs-Protokollstream, der Protokolle für die Ausführungsumgebung enthält, die die Anfrage bearbeitet hat.
lambda-web-error-type Der Fehlertyp im Format <Prefix>.<ErrorReason> (z. B. Platform.EndpointRequestThrottle oderRuntime.RequestTimeout). Lambda lässt diesen Header bei internen Dienstfehlern und Autorisierungsfehlern aus. Eine Liste der Werte finden Sie unter. Fehlertypen der Webfunktion

Header-Grenzwerte

Die Anforderungszeile, die Anforderungsheader und die abschließende Leerzeile können insgesamt bis zu 128 KiB betragen. Lambda lehnt eine Anfrage ab, die dieses Limit mit HTTP 431 (Request Header Fields Too Large) überschreitet, bevor die Anfrage Ihre Anwendung erreicht. Informationen zur Fehlerbehebung finden Sie unter. Grenzwerte für Header anfordern