Appeler directement des fonctions Cloud Run
Pour prendre en charge l'itération et le débogage rapides, Cloud Run Functions fournit une commande call
dans l'interface de ligne de commande et des fonctionnalités de test dans l'interface utilisateur de la console Google Cloud. Cela vous permet d'appeler directement une fonction pour vous assurer qu'elle se comporte comme prévu. La fonction s'exécute immédiatement, même si elle a été déployée pour répondre à un événement spécifique.
Tester votre fonction avec Google Cloud CLI
Pour appeler directement une fonction à l'aide de la gcloud CLI, exécutez la commande gcloud functions call
et fournissez toutes les données que votre fonction attend au format JSON dans l'argument --data
. Exemple :
gcloud functions call YOUR_FUNCTION_NAME --data '{"name":"Tristan"}'
où YOUR_FUNCTION_NAME
correspond au nom de la fonction que vous souhaitez exécuter. L'argument --data
est envoyé à votre fonction comme suit :
- Pour les fonctions HTTP, les données que vous fournissez sont envoyées en tant que corps d'une requête POST.
- Pour les fonctions d'arrière-plan, les données sont directement transmises à votre fonction en tant que données d'événement.
- Pour les fonctions CloudEvent, les données sont directement transmises à votre fonction en tant que données d'événement.
Pour en savoir plus, reportez-vous à la documentation gcloud functions call
.
Tester votre fonction avec la console Google Cloud
Pour appeler directement une fonction à partir de la console Google Cloud, procédez comme suit :
Cliquez sur le nom de la fonction que vous souhaitez appeler.
Cliquez sur l'onglet Tests.
Dans le champ Configurer un événement déclencheur, saisissez les données que votre fonction attend au format JSON.
Cliquez sur Tester la fonction.
La réponse de votre fonction s'affiche dans le champ Sortie et les journaux de l'exécution individuelle s'affichent dans le champ Journaux.
Exemple de fonction Cloud Pub/Sub basée sur des événements
Cet exemple montre comment appeler directement une fonction basée sur des événements déclenchée par des événements Cloud Pub/Sub :
Node.js
Python
Go
Java
C#
Ruby
PHP
Pour appeler directement la fonction, envoyez une requête PubsubMessage
, qui attend des données encodées en base64 en tant que données d'événement :
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'"}'
Go
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'"}'
Cet exemple de la CLI utilise la syntaxe bash
ou sh
. Il fonctionne sous Linux et Mac, mais pas sous Windows.
Vous pouvez également appeler la fonction depuis la console Google Cloud en utilisant les mêmes données d'événement dans le champ Événement déclencheur.