------------------------------------users.js
路由文件:
...
const GoogleStrategy = require('passport-google-oauth20').Strategy
...
passport.use(new GoogleStrategy(
{
clientID: process.env.GOOGLE_CLIENT_ID,
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
callbackURL: 'users/auth/google/callback'
}, accessToken => {
console.log(accessToken);
}
)
)
...
router.get('/auth/google', passport.authenticate('google', {scope: ['profile', 'email']}))
...
在Google developers控制台中,我将授权重定向URI设置为:
http://localhost:3000/users/auth/google/callback我的客户端ID和机密正确。
在错误消息中,我可以看到重定向URI是:http://localhost:3000/auth/users/auth/google/callback
Url路径的开头有一个额外的auth
,这很奇怪,因为我还没有设置它。我怎么才能把它去掉呢?我能把它取下来吗?
首先,您创建了一个指向“users/auth/google/callback”的回调url,因此您必须创建它:
router.get('users/auth/google/callback',
passport.authenticate('google', { failureRedirect: '/login' }),
function(req, res) {
// Successful authentication, redirect home.
res.redirect('/');
});