如何使用护照Google O Auth实施我们自己的自定义注册表单?

时间:2018-07-26 16:47:29

标签: node.js reactjs jwt passport.js

我正在为当前项目使用react和node。我正在使用Google o auth 2.0进行身份验证。在Google完成回调过程后,我想将用户重定向到我的自定义路由,在此我将向他们显示某种形式。用户应该填写其他信息,例如地址,电话号码等,然后再将其保存到数据库中。该表单将由redux-form显示。

passport.use(new GoogleStrategy({
    clientID:keys.googleClientId,
    clientSecret: keys.googleClientSecret,
    callbackURL: '/auth/google/callback'
}, async (req,accessToken,refreshToken,profile,done)=>{
    done(null,profile.id);
}))

app.get('/auth/google',passport.authenticate('google', { session: false, scope: ['openid', 'profile', 'email'] }))

app.get('/auth/google/callback',passport.authenticate('google', { session: false }),(req,res)=>{
        // req.user recieves a google id.

    })

如上面的代码所示,回调完成后,req会接收用户google id。我的问题是,如何在此过程中(使用react)向用户显示表单,保留googleID,直到用户填写表单并使用googleID提交表单。

0 个答案:

没有答案