Utiliser OAuth

L'API Places (nouvelle version) est compatible avec l'utilisation d'OAuth 2.0 pour l'authentification. Google accepte les scénarios courants OAuth 2.0, tels que ceux relatifs à un serveur Web.

Ce document explique comment transmettre un jeton OAuth à l'appel de l'API Places (nouvelle version) dans votre de développement. Pour savoir comment utiliser OAuth dans un environnement de production, consultez la section Authentification chez Google.

Avant de commencer

Avant de commencer à utiliser l'API Places (nouvelle version), vous avez besoin d'un avec un compte de facturation et l'API Places (nouvelle version) activée. Nous vous recommandons de créer plusieurs les propriétaires de projet et les administrateurs de la facturation, de sorte que vous ayez toujours quelqu'un avec ces rôles ; disponibles pour votre équipe. Pour en savoir plus, consultez Configurer vos projets dans la console Cloud.

À propos d'OAuth

Il existe de nombreuses façons de créer et de gérer des jetons d'accès avec OAuth en fonction de votre environnement de déploiement.

Par exemple, le système Google OAuth 2.0 est compatible avec les interactions entre serveurs, comme celles entre votre application et un service Google. Pour ce scénario, vous avez besoin d'un compte de service, qui est un compte appartenant à votre application et non à un utilisateur final individuel. Votre appelle les API Google au nom du compte de service, les utilisateurs ne sont donc pas directement impliqués. Pour en savoir plus sur les méthodes d'authentification, consultez la page Authentification chez Google.

Vous pouvez également utiliser l'API Places (nouvelle version) dans une application mobile Android ou iOS. Pour obtenir des informations générales sur l'utilisation d'OAuth avec l'API Places (nouvelle version), y compris des informations sur la gestion les jetons d'accès pour différents environnements de déploiement, consultez Utiliser le protocole OAuth 2.0 pour accéder aux API Google

À propos des habilitations OAuth

Pour utiliser OAuth avec l'API Places (nouvelle), le champ d'application doit être attribué au jeton OAuth :

  • https://www.googleapis.com/auth/cloud-platform

Exemple: Essayer les appels d'API REST dans votre environnement de développement local

Si vous souhaitez essayer l'API Places (nouvelle) à l'aide d'un jeton OAuth, mais que vous ne disposez pas d'un environnement configuré pour générer des jetons, vous pouvez utiliser la procédure décrite dans cette section pour effectuer l'appel.

Cet exemple explique comment utiliser le jeton OAuth fourni par Identifiants par défaut de l'application (ADC) pour passer l'appel. Pour en savoir plus sur l'utilisation des ADC pour appeler des API Google à l'aide de bibliothèques clientes, consultez la page S'authentifier à l'aide de bibliothèques clientes.

Prérequis

Avant de pouvoir effectuer une requête REST à l'aide des identifiants par défaut de l'application, utilisez la Google Cloud CLI pour fournir des identifiants aux ADC :

  1. Si vous ne l'avez pas déjà fait, créez un projet et activez la facturation en suivant les étapes décrites dans l'article Configuration dans la console Google Cloud.
  2. Installez et initialisez gcloud CLI.
  3. Exécutez la commande gcloud suivante sur votre ordinateur local pour créer votre fichier d'identifiants :

    gcloud auth application-default login
  4. Un écran de connexion s'affiche. Une fois que vous êtes connecté, vos identifiants sont stockés dans le fichier d'identifiants local utilisé par ADC.

Pour en savoir plus, consultez la section Environnement de développement local de la documentation Fournir des identifiants pour les identifiants par défaut de l'application.

Envoyer une requête REST

Dans cet exemple, vous transmettez deux en-têtes de requête :

L'exemple suivant appelle l'API Places (nouvelle version) à l'aide d'un jeton OAuth:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \
"https://places.googleapis.com/v1/places:searchText"

Dépannage

Si votre requête renvoie un message d'erreur indiquant que les identifiants d'utilisateur final ne sont pas compatibles avec cette API, consultez la section Les identifiants utilisateur ne fonctionnent pas.