如何从Google API人员访问用户地址信息

时间:2019-04-13 14:18:30

标签: node.js passport.js google-oauth2

我使用opass2。使用护照号和node.js进行身份验证。

我可以获取电话号码,电子邮件,生日,但是我无法获取用户地址,我不知道为什么。

在此https://www.googleapis.com/auth/user.addresses.read中。我可以获取用户地址,但是为什么不能呢?

我的代码有什么问题?

这是我的代码

护照设置

passport.use(
    new GoogleStrategy({
        //options for the google strategy
        callbackURL: keys.origin.url + '/api/auth/google/redirect',
        clientID: keys.google.clientID,
        clientSecret: keys.google.clientSecret,
        userProfileURL: 'https://www.googleapis.com/oauth2/v3/userinfo'
    }, (accessToken, refreshToken, profile, done) => {
          console.log(profile);

    })

);

路线

routes.get('/auth/google',passport.authenticate("google",{
    scope: [
    "profile", 
    "email",
    "https://www.googleapis.com/auth/user.addresses.read", 
    "https://www.googleapis.com/auth/contacts.readonly",
    "https://www.googleapis.com/auth/contacts",
    "https://www.googleapis.com/auth/userinfo.profile"
]
}));
  

我是否必须请求另一个REST API来获取用户地址?或仅   使用Google登录名可以访问用户地址吗?

0 个答案:

没有答案