Résoudre les problèmes d'authentification et d'autorisation

Cette page décrit certains problèmes courants que vous pouvez rencontrer concernant l'authentification et l'autorisation.

This app isn't verified

Si l'écran de consentement OAuth affiche l'avertissement "Cette application n'est pas validée", cela signifie que votre application demande des niveaux d'accès qui permettent d'accéder à des données utilisateur sensibles. Si votre application utilise des niveaux d'accès sensibles, elle doit passer par la procédure de validation pour supprimer cet avertissement et d'autres limites. Pendant la phase de développement, vous pouvez ignorer cet avertissement en sélectionnant Avancé > Accéder à {Nom du projet} (non sécurisé).

File not found error for credentials.json

Lorsque vous exécutez l'exemple de code, vous pouvez recevoir un message d'erreur "fichier introuvable" ou "aucun fichier de ce type" concernant credentials.json.

Cette erreur se produit lorsque vous n'avez pas autorisé les identifiants de l'application de bureau. Pour savoir comment créer des identifiants pour une application de bureau, consultez Créer des identifiants.

Une fois les identifiants créés, assurez-vous que le fichier JSON téléchargé est enregistré sous le nom credentials.json. Déplacez ensuite le fichier vers votre répertoire de travail.

Token has been expired or revoked

Lorsque vous exécutez l'exemple de code, vous pouvez recevoir le message d'erreur "Le jeton a expiré" ou "Le jeton a été révoqué".

Cette erreur se produit lorsqu'un jeton d'accès du serveur d'autorisation Google a expiré ou a été révoqué. Pour en savoir plus sur les causes potentielles et les solutions, consultez Expiration du jeton d'actualisation.

Erreurs Python

Voici quelques erreurs Python courantes.

AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'

Cette erreur peut se produire sous Mac OSX lorsque l'installation par défaut du module six (une dépendance de la bibliothèque Python) est chargée avant celle installée par pip. Pour résoudre le problème, ajoutez l'emplacement d'installation de pip à la variable d'environnement système PYTHONPATH :

  1. Déterminez l'emplacement d'installation de pip :

    pip show six | grep "Location:" | cut -d " " -f2
    

    Notez cet emplacement, car vous en aurez besoin à l'étape suivante.

  2. Ajoutez la ligne suivante à votre fichier ~/.bashrc, en remplaçant INSTALL_PATH par l'emplacement déterminé à l'étape précédente :

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. Rechargez votre fichier ~/.bashrc :

    source ~/.bashrc
    

TypeError: sequence item 0: expected str instance, bytes found

Cette erreur est due à un bug dans httplib2. Pour résoudre ce problème, passez à la dernière version de httplib2 :

pip install --upgrade httplib2

Cannot uninstall 'six'

Lorsque vous exécutez la commande pip install, vous pouvez recevoir l'erreur suivante :

Cannot uninstall 'six'. It is a distutils installed project and thus we
cannot accurately determine which files belong to it which would lead to
only a partial uninstall.

Cette erreur se produit sur Mac OSX lorsque pip tente de mettre à niveau le package six préinstallé. Pour contourner ce problème, ajoutez l'option --ignore-installed six à la commande pip install.