Iam使用passport.js进行身份验证,使用password-google-oauth20
我想知道如何获取用户信息,例如地址,电话号码?到目前为止,我只能获取诸如电子邮件,姓名,个人资料之类的信息,而不能得到地址和电话号码。使用Google登录后如何访问用户数据地址?
是否有用于访问该用户地址和电话号码的API?我该怎么办?
这是我的代码:
护照设置
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"]
}));
答案 0 :(得分:0)
routes.get('/auth/google',passport.authenticate("google",{
scope: [
'https://www.googleapis.com/auth/userinfo.profile',
'https://www.googleapis.com/auth/userinfo.email',
'https://www.googleapis.com/auth/user.phonenumbers.read',
'https://www.googleapis.com/auth/user.addresses.read',
'https://www.googleapis.com/auth/profile.agerange.read'
]
}));
这将返回用户数据