Использование API Листов Google Node.js с паспортом - PullRequest
0 голосов
/ 02 сентября 2018

Я уже аутентифицировал своего пользователя с помощью Passport.js и получил токен доступа обратно. Я должен иметь возможность использовать этот токен для использования API таблиц Google, но я попробовал несколько способов доступа к API без какой-либо удачи. Вот моя аутентификация с паспортом, а затем мой app.get из Google API. Я уверен, что делаю это неправильно, но я не знаю, как двигаться дальше.

    passport.use(
  new GoogleStrategy({
    // options for the strategy
    callbackURL:  callbackURI,
    clientID: clientID,
    clientSecret: clientSecret,
  }, (accessToken, refreshToken, profile, done)=>{
    // check if user already exists in our db
    User.findOne({googleId: profile.id}).then((currentUser)=>{
      if(currentUser){
        // already have the user
        console.log('User is: ' + currentUser);
        console.log("Access token is: " + accessToken);
        console.log("Refresh token is:" + refreshToken);
        token = accessToken;

        done(null, currentUser)
      } else {
        // if not, create user in the db
        new User({
          username: profile.displayName,
          googleId: profile.id
        }).save().then((newUser)=>{
          console.log('New user created: ' + newUser);
          done(null, newUser);

        });
      }
    });
  }
));

// Google API Access Attempt

app.get('/index/auth/spreadsheets',
passport.authenticate('bearer', { session: false }),
function(req, res) {
  res.json(req.user);
  Sheets.spreadsheet.create({
    title: "Text SpreadSheet"
  })
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...