У меня есть паспорт JS обратного вызова, который, когда новый пользователь пытается аутентифицироваться, я не хочу, чтобы данные новых пользователей были сохранены в базе данных, а скорее в express -сессии для доступа позже, это возможно?
В настоящее время мой код:
function facebookAuthenticate(accessToken, refreshToken, profile, done) {
User.findOne({ facebookID: profile._json.id }, (err, foundUser) => {
if (foundUser) {
done(err, foundUser);
} else {
global.authenticationID = { facebookID: profile._json.id };
done(err, null)
}
});
}
Но поскольку глобальная переменная не указана пользователем c, она может использоваться только для одной аутентификации за раз.
В идеале я хотел бы, чтобы что-то работало в этом направлении, но, конечно, у меня нет доступа к переменной req вне маршрута:
function facebookAuthenticate(accessToken, refreshToken, profile, done) {
User.findOne({ facebookID: profile._json.id }, (err, foundUser) => {
if (foundUser) {
done(err, foundUser);
} else {
req.session.authenticationID = { facebookID: profile._json.id };
done(err, null)
}
});
}
Большое спасибо.