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
Accédez à la page de présentation de Cloud Run Functions dans la console Google Cloud :
Cliquez sur le nom de la fonction dont vous souhaitez récupérer l'URL.
Cliquez sur l'onglet Modifier.
Affichez l'URL de votre fonction dans la section Déclencheur.
Étapes suivantes
- Découvrez comment écrire des fonctions HTTP.
- Découvrez comment déployer une fonction Cloud Run.
- Reportez-vous au tutoriel sur la fonction HTTP pour obtenir un exemple d'écriture, de déploiement et d'appel d'une fonction HTTP.