Je fais un script pour lire les données de la feuille de calcul Google en utilisant le script suivant sur nodejs:
var url = oauth2Client.generateAuthUrl({
access_type: 'offline',
approval_Prompt: 'force',
scope: [
'https://www.googleapis.com/auth/analytics.readonly',
'https://www.googleapis.com/auth/drive',
'https://www.googleapis.com/auth/spreadsheets'
]
});
global.googleapis = { expiry_date: 0 };
google.options({ auth: oauth2Client });
var sheets = google.sheets('v4');
sheets.spreadsheets.get({ spreadsheetId: 'id'}, function(err, data) {
res.send(err, data);
});
Mais à chaque requête get, j'obtiens cette erreur:
Request had insufficient authentication scopes.
J'ai vérifié la console de développement Google pour activer l'API Google Drive et son activation. Je ne sais donc pas vraiment ce que cela pourrait être.
Tout d’abord, supprimez les fichiers d’identifiants ~/.credentials/sheets.googleapis.com-nodejs-quickstart.json
(selon votre configuration)
Modifier la variable d’étendue utilisée pour lire les cellules à partir de Google Spreadsheets à partir de
var SCOPES = [' https://www.googleapis.com/auth/spreadsheets.readonly '];
à
var SCOPES = [' https://www.googleapis.com/auth/spreadsheets '];
Les portées semblent bonnes. Peut-être devriez-vous essayer de supprimer les informations d'identification stockées précédemment dans /Users/yourUserName/.credentials/sheets.googleapis.com-projectName/*
, puis exécuter à nouveau l'application pour obtenir de nouvelles informations d'identification.
Tout d’abord, assurez-vous de activer également l’API Sheets dans votre console de développeur.
Le insufficient authentication scopes
est une erreur dans le jeton OAuth 2.0 fourni dans la demande spécifie scopes qui sont insuffisants pour accéder aux données demandées.
Assurez-vous donc que vous utilisez la bonne et toute la portée nécessaire et vérifiez ceci Autoriser les demandes avec OAuth 2.0 / si vous suivez correctement les étapes décrites ici.
Enfin, essayez de révoquer l'accès et essayez de le refaire.
Pour plus d'informations, consultez la question SO correspondante:
Le même problème s'est produit lorsque j'ai mis à jour l'étendue. Parallèlement à l'instruction, je supprime le fichier token.json du même répertoire que le script python.
Je cherchais depuis longtemps l'emplacement des identifiants. Beaucoup de forum ont mentionné que ce serait sous c:\utilisateurs\.credentials\google-api ****. Json Mais je ne pouvais les trouver nulle part. Ensuite, j'ai réalisé que mon programme avait créé un fichier token.pickle directement dans le répertoire programme .py , qui est essentiellement le fichier de données d'identification.