在此当前链接中,以下内容被声明为声明您不希望会话的有效方法。似乎这是一种设置会话的方法:在“验证回调”中直接设置为false,而不是必须对每个请求都进行设置。
https://github.com/jaredhanson/passport-local
passport.use(new LocalStrategy({
usernameField: 'email',
passwordField: 'passwd',
session: false
},
function(username, password, done) {
// ...
}
));
但是,实际上,无论是否提供了上述会话属性,似乎唯一可行的事情就是执行以下操作:
router.post('/signin', passport.authenticate('local', { session: false }), function(request, response) {
// const token = authHelpers.createToken(request.user.email)
// response.status(200).send({ success: 'User successfully authenticated.', token: token });
});
否则,您将得到: 错误:无法将用户序列化为会话。
对于我来说,似乎很奇怪,没有一种方法可以指定您永远不需要会话,而必须在每个请求中都提供它。这似乎也一定是一个错误,因为第一种语法似乎一点都没有改变。
有人知道该第一种语法是从先前版本还是已弃用,是否需要从文档中清除?提前致谢。