gpt4 book ai didi

javascript - Passport.js Facebook 身份验证下一步不起作用

转载 作者:行者123 更新时间:2023-12-03 03:30:42 25 4
gpt4 key购买 nike

我尝试实现的passport.js 策略是针对facebook 提供商的策略。我已经用教科书示例(来自 https://github.com/passport/express-4.x-facebook-example )进行了测试,似乎从未调用重定向。

重定向序列工作正常,除非用户登录时重定向到主页,即使在回调中显式放置不同的 URL 也是如此。

所以除了最后一个重定向之外一切正常,最终应该是 https://xx.com/testing这永远不会发生。

nodejs 6、express 4+、passport 3.2

出了什么问题?

策略

passport.use(new FacebookStrategy({
clientID: xx,
clientSecret: 'xx',
callbackURL: 'https://xx.com/auth/facebook/callback/',
profileFields: ['id', 'email', 'name', 'displayName']
},
function (accessToken, refreshToken, profile, done) {
return done(null, profile)
}
))

路线

router.get('/auth/facebook', passport.authenticate('facebook', {scope: ['public_profile', 'email']}))
router.get('/auth/facebook/callback',
passport.authenticate('facebook', { failureRedirect: '/login' }),
function(req, res) {
// never gets called
console.log('I don't get called!!!')
res.redirect('/testing')
})

最佳答案

/testing 转到 successRedirect

passport.authenticate('facebook', { 
successRedirect: '/testing',
failureRedirect: '/login'
}));

更新:使用passport.authorize

router.get('/auth/facebook/callback',
passport.authorize('facebook', { failureRedirect: '/login' }),
function(req, res) {
res.redirect('/testing')
});

关于javascript - Passport.js Facebook 身份验证下一步不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46118832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com