Я получаю следующую ошибку во время моего потока OAuth2 с помощью node.js клиента API Google:
> Error: No access, refresh token or API key is set.
Я вызываю следующую функцию во время обратного вызова после пользователя предоставляет разрешения, позволяющие моему приложению использовать определенные области от имени пользователя:
const { google } = require("googleapis");
const functions = require("firebase-functions");
const url = require("url");
exports.AuthCallback = functions.https.onRequest((request, response) => {
const queryObject = url.parse(request.url, true).query;
const auth = new google.auth.OAuth2(
googleConfig.clientId,
googleConfig.clientSecret,
googleConfig.redirect
);
auth
.getToken(queryObject.code)
.then(tokens => {
auth.setCredentials(tokens);
return getGoogleAccountFromCode(auth);
})
.catch(err => {
console.error(err);
});
});
function getGoogleAccountFromCode(auth) {
const profile = google.oauth2({
auth: auth,
version: "v2"
});
profile.userinfo.get(res => {
console.log(res);
});
}
У меня также включен API Google Plus для моего проекта в облачной консоли Google.
Не уверен, что мне здесь не хватает.
Спасибо!