gpt4 book ai didi

javascript - Passport 身份验证回调而不是重定向

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

passport.authenticate('local-register',{
successRedirect: '/login',
failureRedirect: '/path_to_greatness',
})(req, res, next);

我正在编写一个无状态的 API,因此上面的方法(如 successRedirect)无法满足我的需求。但我仍然想使用 Passport 层,如何回调?

最佳答案

您可以将回调传递给 passport.authenticate,这应该适合广泛的用例。传递回调时,您必须自己创建 session (假设身份验证成功)。 (docs)

这是一个简单的使用示例:

function handler(req, res, next) {
// assuming we're using a "local" strategy
passport.authenticate('local', (err, user, params) => {
if (err) return next(err)
if (!user) return next(new Error('Authentication Failed'))

// user is authenticated, create a session
req.logIn(user, (err) => {
if (err) return next(err)
// handle response
res.status(200).json({ some: 'data' })
})
})(req, res, next)
}

关于javascript - Passport 身份验证回调而不是重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35690681/

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