View a markdown version of this page

Richieste e risposte HTTP - AWS Lambda

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Richieste e risposte HTTP

Un endpoint Web Function accetta HTTP/1.1 le richieste e le inoltra all'applicazione tramite. HTTP/1.1 Lambda rifiuta HTTP/1.0 le richieste con HTTP 505 (versione HTTP non supportata). Lambda conserva il metodo di richiesta, il percorso, la stringa di query, il corpo e la maggior parte delle intestazioni. Rimuove o modifica le intestazioni che descrivono la connessione tra il client e l'endpoint. Aggiunge inoltre intestazioni che forniscono il contesto della richiesta.

Metodi HTTP

Gli endpoint Web Function supportano GETHEAD,POST,, PUT PATCHOPTIONS, e. DELETE

Lambda rifiuta un metodo non supportato con una risposta HTTP 400 prima che la richiesta raggiunga l'applicazione.

Intestazioni della richiesta

Lambda rimuove le seguenti intestazioni prima di inoltrare una richiesta:

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

  • Proxy-Authenticate, Proxy-Authorization e Proxy-Connection

  • X-Real-IP

  • X-HTTP-Method-Override, X-HTTP-Method e X-Method-Override

  • Intestazioni i cui nomi iniziano con e intestazioni lambda-web- denominate nell'intestazione Connection

Lambda convalida o modifica le seguenti intestazioni.

Header Comportamento
Host Deve essere il nome di dominio dell'endpoint di Web Function (ad esempio,bcdfghjklmnpqrst.b7t.lambda-web.us-east-1.on.aws), in lettere minuscole e senza porta. Lambda esegue il routing su questo valore e restituisce HTTP 404 se non corrisponde a un endpoint o HTTP 400 se manca l'intestazione. L'applicazione riceve il nome di dominio dell'endpoint.
X-Forwarded-For Lambda aggiunge l'indirizzo IP del client di connessione come ultimo valore. I valori precedenti provengono dal client e non vengono convalidati. Quando una CloudFront distribuzione Amazon è davanti all'endpoint, l'ultimo valore è un CloudFront indirizzo.

Lambda inoltra X-Forwarded-Host dal client senza convalida. Non utilizzatelo per creare reindirizzamenti, URL assoluti o autorizzazioni basate sull'host, a meno che non sia impostata da una porta principale da voi controllata.

Lambda aggiunge le seguenti intestazioni.

Header Description
lambda-web-request-id L'identificatore che Lambda assegna alla richiesta.
lambda-web-endpoint-name Il nome dell'endpoint che ha ricevuto la richiesta.

Per gli endpoint che utilizzano l'autorizzazione IAM, Lambda convalida la richiesta firmata e rimuove Authorization l'intestazione prima di inoltrarla. Per ulteriori informazioni, consulta Utilizzo del tipo di IamAuthautenticazione.

Intestazioni di risposta

Lambda rimuove le intestazioni con ambito di connessione e i trailer HTTP dalla risposta dell'applicazione. A seconda del risultato della richiesta, Lambda può aggiungere le seguenti intestazioni.

Header Description
lambda-web-request-id L'identificatore della richiesta. Utilizzatelo per correlare una risposta con i registri dell'applicazione e del sistema.
lambda-web-logstream Il flusso di log di Amazon CloudWatch Logs che contiene i log per l'ambiente di esecuzione che ha gestito la richiesta.
lambda-web-error-type Il tipo di errore, nel formato <Prefix>.<ErrorReason> (ad esempio, Platform.EndpointRequestThrottle o). Runtime.RequestTimeout Lambda omette questa intestazione per errori interni del servizio e errori di autorizzazione. Per l'elenco dei valori, vedi. Tipi di errore delle funzioni Web

Limiti dell'intestazione

La riga di richiesta, le intestazioni della richiesta e la riga vuota di terminazione possono raggiungere un totale di 128 KB. Lambda rifiuta una richiesta che supera questo limite con HTTP 431 (Request Header Fields Too Large) prima che la richiesta raggiunga l'applicazione. Per la risoluzione dei problemi, consulta. Limiti di intestazione della richiesta