这是我目前的护照认证机制
random.choice(char1)
我的策略定义如下:
reply = comment.body
while phrase in reply:
random_choice = random.choice(char1)
reply.replace(phrase, random_choice, 1) #extra argument to only replace first occurence
现在,我需要将const requireAuth = passport.authenticate('jwt', { session: false });
更改为:
passport.use('jwt', new Strategy(options, (payload, done) => {
// my logic
}))
现在,我需要将此requireAuth
变量传递给我的策略。如何在最小化策略更改的情况下做到这一点?
编辑:
为了记录,我将function requireAuth(allowProxyLogin) {
return passport.authenticate('jwt', { session: false })
}
函数更改为:
allowProxyLogin
使实施@Saurabh的答案更加容易。
答案 0 :(得分:1)
我认为您可以做的是在调用身份验证时传递此选项'passReqToCallback'
function requireAuth(allowProxyLogin) {
return passport.authenticate('jwt', { session: false, passReqToCallback: true })
}
这会将请求传递给您的验证回调,例如
passport.use('jwt', new Strategy(req, options, (payload, done) => {
// my logic
}))
现在,您可以添加变量allowProxyLogin
来请求并在验证回调中访问它。