1
Мой код вставляется ниже. В методе обратного вызова я устанавливаю пользователя, но когда я перенаправляюсь на '/', пользователь больше не доступен. Я использую паспорт и клиентские сессии. Любая помощь будет принята с благодарностью. Первоначально я использовал req.session и изменил его в соответствии с этим linkмодуль клиент-сессий с паспортом
Спасибо.
app.get('/', function (req, res) {
if (req.session_state.user == null) {
passport.authenticate('azureoauth', { failureRedirect: './'})
}
else {
res.render('index', {user: req.session_state.user});
}
});
//This gets called by an external internet application
app.get('/auth/azureOAuth/callback',
passport.authenticate('azureoauth', {}),
function (req, res) {
req.session_state.user = req.user;
res.redirect("/");
});
И в моем app.js, у меня есть следующий код:
const clientSession = require("client-sessions");
app.use(clientSession({secret: 'blablabla', duration: 1000 * 60 * 60 * 24 * 365 * 10}));
app.use(passport.initialize()); // for user authentication/authorization
app.use(passport.session());
Я не знаком с паспортом , но вы задаете имя сеанса как «session_state»? – Fab