Déclencheurs HTTP

Dans Cloud Run Functions, un déclencheur HTTP permet à une fonction de s'exécuter en réponse aux requêtes HTTP(S). Lorsque vous spécifiez un déclencheur HTTP pour une fonction, une URL est attribuée à cette fonction pour la réception des requêtes. Les déclencheurs HTTP acceptent les méthodes de requête GET, POST, PUT, DELETE et OPTIONS.

Dans Cloud Run Functions, les requêtes adressées à une URL de fonction nécessitent toujours le protocole HTTPS.

Par défaut, les requêtes adressées à une fonction avec un déclencheur HTTP nécessitent une authentification. Vous pouvez choisir d'autoriser les appels non authentifiés pendant le déploiement. Pour en savoir plus, consultez la section Autoriser l'appel de fonctions HTTP sans authentification.

Utilisez des fonctions HTTP pour mettre en œuvre des fonctions Cloud Run capables de gérer des requêtes HTTP(S) générales.

Déploiement

Vous pouvez spécifier un déclencheur HTTP lorsque vous déployez une fonction. Consultez la page Déployer une fonction Cloud Run pour obtenir des instructions générales sur le déploiement d'une fonction. Consultez cette section pour obtenir des informations supplémentaires spécifiques à la configuration des déclencheurs HTTP lors du déploiement.

gcloud

Si vous déployez à l'aide de gcloud CLI, les options ci-dessous permettent de configurer les déclencheurs HTTP :

gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-http \
[--allow-unauthenticated] \
[--security-level=SECURITY_LEVEL] \
...
  • L'option --trigger-http indique que la fonction utilise un déclencheur HTTP.
  • L'option --allow-unauthenticated indique que la fonction peut être appelée sans authentification. Si vous omettez cette option, les appels à la fonction nécessitent une authentification, ce qui est le fonctionnement par défaut. Pour en savoir plus, consultez la page Authentification pour l'appel.

Console

Si vous effectuez un déploiement à l'aide de la console Google Cloud, vous pouvez configurer un déclencheur HTTP dans la section Déclencheur.

  • Sous HTTPS, dans le champ Authentification, sélectionnez une option selon que vous souhaitez autoriser les appels non authentifiés de votre fonction. Par défaut, l'authentification est requise. Pour en savoir plus, consultez la section Authentification pour l'appel.

URL de la fonction

Une fois votre fonction déployée avec un déclencheur HTTP, vous pouvez récupérer son URL attribuée.

Les fonctions ont des URL attribuées au format suivant. Ces URL ont un format déterministe, ce qui signifie que vous pouvez prédire l'URL avant de déployer la fonction :

https://REGION-PROJECT_ID.cloudfunctions.net/FUNCTION_NAME

Les fonctions disposent également d'une URL attribuée associée au service Cloud Run sous-jacent. Ces URL n'ont pas de format déterministe, ce qui signifie que le deuxième champ étant un hachage aléatoire, vous ne pouvez pas prédire l'URL avant de déployer la fonction. Une fois que vous avez déployé la fonction, l'URL reste stable :

https://FUNCTION_NAME-RANDOM_HASH-REGION.a.run.app

Une URL cloudfunctions.net et une URL run.app de fonction se comporteront exactement de la même manière. Elles sont interchangeables.

Vous pouvez récupérer la ou les URL de votre fonction comme suit :

gcloud

gcloud functions describe YOUR_FUNCTION_NAME \
--region=YOUR_FUNCTION_REGION \
--format="value(serviceConfig.uri)" \
...

Console

  1. Accédez à la page de présentation de Cloud Run Functions dans la console Google Cloud :

    Accéder aux fonctions Cloud Run

  2. Cliquez sur le nom de la fonction dont vous souhaitez récupérer l'URL.

  3. Cliquez sur l'onglet Modifier.

  4. Affichez l'URL de votre fonction dans la section Déclencheur.

Étapes suivantes