У меня есть код node.js, который использует стратегию паспорта openId connect для аутентификации. После аутентификации он перенаправляет обратно на исходный URL-адрес, однако, если я отправляю форму с POST по истечении сеанса, он не перенаправляет обратно на исходный URL-адрес как операцию POST, а изменяет ее на запрос GET.
Я хочу знать, есть ли какой-нибудь способ, где я могу сохранить тип запроса и после аутентификации он выполняет ту же операцию.
мой код app.js выглядит так:
app.get('/login', passport.authenticate('openidconnect', {}));
function ensureAuthenticated(req, res, next) {
if (!req.isAuthenticated()) {
req.session.originalUrl = req.originalUrl;
res.redirect('/login');
} else {
return next();
}
}
app.get('/auth/sso/callback',function(req, res, next) {
var redirect_url = req.session.originalUrl;
passport.authenticate('openidconnect', {
successRedirect: redirect_url,
failureRedirect: '/failure',
})(req,res,next);
});
PS: Аутентификация и другие общие перенаправления работают нормально .. проблема только с отправкой формы POST.