Chiamare direttamente le funzioni di Cloud Run
Per supportare l'iterazione e il debug rapidi, le funzioni Cloud Run forniscono un comando call
nell'interfaccia a riga di comando e la funzionalità di test nell'interfaccia utente della console Google Cloud. Questo ti consente di richiamare direttamente una funzione
assicuratevi che si comporti come previsto. Di conseguenza, la funzione viene eseguita
immediatamente, anche se potrebbe essere stata implementata per rispondere a un
evento specifico.
Testa la funzione con Google Cloud CLI
Per richiamare direttamente una funzione utilizzando gcloud CLI, utilizza
il comando gcloud functions call
e fornire tutti i dati previsti dalla funzione
come JSON nell'argomento --data
. Ad esempio:
gcloud functions call YOUR_FUNCTION_NAME --data '{"name":"Tristan"}'
dove YOUR_FUNCTION_NAME
è il nome della funzione
che vuoi eseguire. L'argomento --data
viene inviato alla funzione come segue:
- Per le funzioni HTTP, i dati forniti vengono inviati come corpo di una richiesta POST.
- Per le funzioni in background, i dati vengono trasmessi direttamente come dati dell'evento alla funzione.
- Per le funzioni CloudEvent, i dati vengono passati direttamente come dati dell'evento alla funzione.
Per saperne di più, consulta la documentazione di gcloud functions call
.
Testa la funzione con la console Google Cloud
Per richiamare direttamente una funzione dalla console Google Cloud, segui questi passaggi:
Fai clic sul nome della funzione da richiamare.
Fai clic sulla scheda Test.
Nel campo Configura evento di trigger, inserisci come JSON i dati previsti dalla funzione.
Fai clic su Testa la funzione.
La risposta della funzione viene visualizzata nel campo Output e i log per la la singola esecuzione viene visualizzata nel campo Log.
Esempio di funzione basata su eventi di Cloud Pub/Sub
Questo esempio mostra come richiamare direttamente una funzione basata su eventi attivata dagli eventi Cloud Pub/Sub:
Node.js
Python
Vai
Java
C#
Ruby
PHP
Per invocare direttamente la funzione, invia un messaggio PubsubMessage
, che prevede dati codificati in base64, come dati dell'evento:
Node.js
DATA=$(printf 'Hello!'|base64) && gcloud functions call helloPubSub --data '{"data":"'$DATA'"}'
Python
DATA=$(printf 'Hello!'|base64) && gcloud functions call hello_pubsub --data '{"data":"'$DATA'"}'
Vai
DATA=$(printf 'Hello!'|base64) && gcloud functions call HelloPubSub --data '{"data":"'$DATA'"}'
Java
DATA=$(printf 'Hello!'|base64) && gcloud functions call java-hello-pubsub --data '{"data":"'$DATA'"}'
C#
DATA=$(printf 'Hello!'|base64) && gcloud functions call csharp-hello-pubsub --data '{"data":"'$DATA'"}'
Ruby
DATA=$(printf 'Hello!'|base64) && gcloud functions call hello_pubsub --data '{"data":"'$DATA'"}'
PHP
DATA=$(printf 'Hello!'|base64) && gcloud functions call helloworldPubsub --data '{"data":"'$DATA'"}'
Questo esempio di interfaccia a riga di comando utilizza la sintassi bash
o sh
. Funziona su Linux e Mac
ma non Windows.
Puoi anche richiamare la funzione dalla console Google Cloud utilizzando il metodo gli stessi dati sugli eventi nel campo Evento di attivazione.