Get userinfo from google OAuth API

Viewed 34

I want to get an user's information from the google OAuth api and save it to the database But I am getting only user's email address. I want user's firstname and lastname.

How can I do that?

The function:

google: async function (req) {
    var google = require("googleapis").google;
    var OAuth2 = google.auth.OAuth2;
    var oauth2Client = new OAuth2();
    oauth2Client.setCredentials({ access_token: req.body.access_token });
    var oauth2 = google.oauth2({
      auth: oauth2Client,
      version: "v2",
    });
    oauth2.userinfo.get(async (err, res) => {
      if (err) {
      } else {
        console.log(res);
        let user_data = new User({
          first_name: res.data.given_name,
          last_name: res.data.family_name,
          email: res.data.email,
        });
        let user = await user_data.save();
        return user;
      }
    });
  }
0 Answers
Related