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à.
InvokeWithResponseStream
Configura le funzioni Lambda per trasmettere i payload di risposta ai client. Per ulteriori informazioni, consulta la pagina Configurazione di una funzione Lambda per lo streaming delle risposte.
Questa operazione richiede l'autorizzazione per l'InvokeFunctionazione lambda:. Per ulteriori informazioni su come configurare le autorizzazioni per le chiamate tra account, consulta Concessione dell'accesso alle funzioni ad altri account.
Sintassi della richiesta
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
Parametri della richiesta URI
La richiesta utilizza i seguenti parametri URI.
- ClientContext
-
Fino a 3.583 byte di dati codificati in base64 sul client dell'invocazione da passare alla funzione nell'oggetto contesto.
- FunctionName
-
Il nome della funzione Lambda.
Formati di nome
-
Nome della funzione:
my-function
-
ARN funzione:
arn:aws:lambda:us-west-2:123456789012:function:my-function
. -
ARN parziale:
123456789012:function:my-function
.
Il vincolo di lunghezza si applica solo all'ARN completo. Se specifichi solo il nome della funzione, questo avrà un limite di lunghezza di 64 caratteri.
Limitazioni di lunghezza: lunghezza minima di 1. Lunghezza massima di 170.
Modello:
(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-_]+))?
Campo obbligatorio: sì
-
- InvocationType
-
Utilizzare una delle opzioni seguenti:
-
RequestResponse
(predefinito): richiama la funzione in modo sincrono. Tiene la connessione aperta fino a quando la funzione non restituisce una risposta o un timeout. La risposta dell'operazione API include la risposta della funzione e dati aggiuntivi. -
DryRun
: convalida i valori dei parametri e verifica che l'utente IAM o il ruolo disponga dell'autorizzazione per richiamare la funzione.
Valori validi:
RequestResponse | DryRun
-
- LogType
-
Impostare su
Tail
per includere il log di esecuzione nella risposta. Si applica solo alle funzioni richiamate in modo sincrono.Valori validi:
None | Tail
- Qualifier
-
Il nome alias.
Limitazioni di lunghezza: lunghezza minima di 1. La lunghezza massima è 128 caratteri.
Modello:
(|[a-zA-Z0-9$_-]+)
Corpo della richiesta
La richiesta accetta i seguenti dati binari.
- Payload
-
Il codice JSON che vuoi fornire come input alla funzione Lambda.
È possibile inserire direttamente il JSON. Ad esempio,
--payload '{ "key": "value" }'
. Puoi inoltre specificare un percorso file. Ad esempio,--payload file://payload.json
.
Sintassi della risposta
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
}
}
Elementi di risposta
Se l'operazione riesce, il servizio restituisce la seguente risposta HTTP.
- StatusCode
-
Per una richiesta con esito positivo, il codice di stato HTTP è compreso nell'intervallo 200. Per il tipo di invocazione
RequestResponse
, questo codice di stato è 200. Per il tipo di invocazioneDryRun
, questo codice di stato è 204.
La risposta restituisce le seguenti intestazioni HTTP.
- ExecutedVersion
-
La versione della funzione eseguita. Quando si richiama una funzione con un alias, indica a quale versione è stato risolto l'alias.
Limitazioni di lunghezza: lunghezza minima di 1. La lunghezza massima è 1024 caratteri.
Modello:
(\$LATEST|[0-9]+)
- ResponseStreamContentType
-
Il tipo di dati restituiti dal flusso.
I dati seguenti vengono restituiti in formato JSON mediante il servizio.
- InvokeComplete
-
Un oggetto che viene restituito quando lo streaming è terminato e tutti i blocchi di payload sono stati restituiti.
Tipo: oggetto InvokeWithResponseStreamCompleteEvent
- PayloadChunk
-
Una parte del payload di risposta trasmesso.
Tipo: oggetto InvokeResponseStreamUpdate
Errori
Per informazioni sugli errori comuni a tutte le operazioni, consultare Errori comuni.
- EC2AccessDeniedException
-
Sono necessarie autorizzazioni aggiuntive per configurare le impostazioni VPC.
Codice di stato HTTP: 502
- EC2ThrottledException
-
Amazon EC2 ha limitato AWS Lambda durante l'inizializzazione della funzione Lambda tramite il ruolo di esecuzione fornito per la funzione.
Codice di stato HTTP: 502
- EC2UnexpectedException
-
AWS Lambda ha ricevuto un'eccezione client Amazon EC2 imprevista durante la configurazione della funzione Lambda.
Codice di stato HTTP: 502
- EFSIOException
-
Si è verificato un errore durante la lettura o la scrittura su un file system connesso.
Codice di stato HTTP: 410
- EFSMountConnectivityException
-
La funzione Lambda non è riuscita a stabilire una connessione di rete al file system configurato.
Codice di stato HTTP: 408
- EFSMountFailureException
-
La funzione Lambda non è riuscita a montare il file system configurato a causa di un problema di autorizzazione o di configurazione.
Codice di stato HTTP: 403
- EFSMountTimeoutException
-
La funzione Lambda ha stabilito una connessione di rete al file system configurato, ma l'operazione di montaggio è scaduta.
Codice di stato HTTP: 408
- ENILimitReachedException
-
AWS Lambda non ha creato un'interfaccia di rete elastica nel VPC, specificata come parte della configurazione della funzione Lambda, perché è stato raggiunto il limite per le interfacce di rete. Per ulteriori informazioni, consulta la pagina relativa alle quote di .
Codice di stato HTTP: 502
- InvalidParameterValueException
-
Uno dei parametri della richiesta non è valido.
Codice di stato HTTP: 400
- InvalidRequestContentException
-
Impossibile analizzare il corpo della richiesta come JSON.
Codice di stato HTTP: 400
- InvalidRuntimeException
-
Il runtime o la versione di runtime specificata non sono supportati.
Codice di stato HTTP: 502
- InvalidSecurityGroupIDException
-
L'ID del gruppo di sicurezza fornito nella configurazione VPC della funzione Lambda non è valido.
Codice di stato HTTP: 502
- InvalidSubnetIDException
-
L'ID della sottorete fornito nella configurazione VPC della funzione Lambda non è valido.
Codice di stato HTTP: 502
- InvalidZipFileException
-
AWS Lambda non è riuscito a decomprimere il pacchetto di distribuzione.
Codice di stato HTTP: 502
- KMSAccessDeniedException
-
Lambda non è riuscito a decrittare le variabili d'ambiente perché l'accesso a AWS KMS è stato negato. Controlla le autorizzazioni KMS della funzione Lambda.
Codice di stato HTTP: 502
- KMSDisabledException
-
Lambda non è riuscito a decrittare le variabili d'ambiente perché la AWS KMS key utilizzata è disabilitata. Controlla le impostazioni delle chiavi KMS della funzione Lambda.
Codice di stato HTTP: 502
- KMSInvalidStateException
-
Lambda non è riuscito a decrittare le variabili di ambiente perché lo stato della AWS KMS key utilizzata è non valido per Decrypt (Decritta). Controlla le impostazioni delle chiavi KMS della funzione.
Codice di stato HTTP: 502
- KMSNotFoundException
-
Lambda non è riuscito a decrittare le variabili d'ambiente perché la AWS KMS key non è stata trovata. Controlla le impostazioni delle chiavi KMS della funzione.
Codice di stato HTTP: 502
- RecursiveInvocationException
-
Lambda ha rilevato che la funzione viene richiamata in un ciclo ricorsivo con altre risorse AWS e ha interrotto l'invocazione della funzione.
Codice di stato HTTP: 400
- RequestTooLargeException
-
Il payload della richiesta ha superato la quota di immissione JSON del corpo della richiesta
Invoke
. Per ulteriori informazioni, consulta la pagina relativa alle quote di .Codice di stato HTTP: 413
- ResourceConflictException
-
La risorsa esiste già o è in corso un'altra operazione.
Codice di stato HTTP: 409
- ResourceNotFoundException
-
La risorsa specificata nella richiesta non esiste.
Codice di stato HTTP: 404
- ResourceNotReadyException
-
La funzione è inattiva e la sua connessione VPC non è più disponibile. Attendi il ripristino della connessione VPC e riprova.
Codice di stato HTTP: 502
- ServiceException
-
Il servizio AWS Lambda ha riscontrato un errore interno.
Codice di stato HTTP: 500
- SnapStartException
-
L'hook di runtime di
afterRestore()
ha riscontrato un errore. Per ulteriori informazioni, consulta i CloudWatch log di Amazon.Codice di stato HTTP: 400
- SnapStartNotReadyException
-
Lambda sta inizializzando la tua funzione. È possibile richiamare la funzione quando lo stato della funzione diventa
Active
.Codice di stato HTTP: 409
- SnapStartTimeoutException
-
Lambda non è riuscita a ripristinare lo snapshot entro il limite di timeout.
Codice di stato HTTP: 408
- SubnetIPAddressLimitReachedException
-
AWS Lambda non è riuscito a configurare l'accesso VPC per la funzione Lambda perché una o più sottoreti configurate non hanno indirizzi IP disponibili.
Codice di stato HTTP: 502
- TooManyRequestsException
-
È stato superato il limite di throughput della richiesta. Per ulteriori informazioni, consulta la pagina relativa alle quote di .
Codice di stato HTTP: 429
- UnsupportedMediaTypeException
-
Il tipo di contenuto del corpo della richiesta
Invoke
non è JSON.Codice di stato HTTP: 415
Vedi anche
Per ulteriori informazioni sull'utilizzo di questa API in uno degli SDK AWS specifici della lingua, consulta quanto segue: