Objectif
Utiliser googleapis avec les fonctions firebase. Obtenir un jeton JWT pour que les fonctions firebase puissent utiliser un compte de service avec délégation à l'échelle du domaine pour autoriser les API G Suite comme directory et drive.
Question
Qu'est-ce qui va dans path.join();
Qu'est-ce que __dirname
Qu'est-ce que 'jwt.keys.json'
?
À partir de cet exemple: https://github.com/googleapis/google-api-nodejs-client/blob/master/samples/jwt.js
// Créer un nouveau client JWT en utilisant le fichier de clé téléchargé depuis la Console de développeur Google
const auth = new google.auth.GoogleAuth({
keyFile: path.join(__dirname, 'jwt.keys.json'), // <---- QU'EST-CE QUI VA DANS path.join()
scopes: 'https://www.googleapis.com/auth/drive.readonly',
});
Erreur
Lorsque j'exécute
const auth = new google.auth.GoogleAuth({
keyFile: path.join(__dirname, "TEST"), // <-- __dirname == /srv/ au moment de l'exécution
scopes: 'https://www.googleapis.com/auth/drive.readonly',
});
À partir des journaux GCP, je reçois cette erreur:
Erreur: ENOENT: aucun fichier ou répertoire de ce type, ouverture de '/srv/TEST'
Évidemment, TEST
n'est pas valide, mais est-ce que '/srv/
l'est?
Quel est le keyFile
, un chemin de fichier? une référence?
Autre exemple
https://github.com/googleapis/google-api-nodejs-client#service-to-service-authentication