fix: Sesssions should not have an effect on the request routing

This commit is contained in:
Bouncey
2019-03-04 21:12:51 +00:00
committed by mrugesh mohapatra
parent 72a0d63aa0
commit 898242f562

View File

@ -101,14 +101,6 @@ export const createPassportCallbackAuthenticator = (strategy, config) => (
res, res,
next next
) => { ) => {
// https://stackoverflow.com/q/37430452
const successRedirect = req => {
if (!!req && req.session && req.session.returnTo) {
delete req.session.returnTo;
return `${homeLocation}/welcome`;
}
return config.successRedirect || `${homeLocation}/welcome`;
};
return passport.authenticate( return passport.authenticate(
strategy, strategy,
{ session: false }, { session: false },
@ -120,9 +112,7 @@ export const createPassportCallbackAuthenticator = (strategy, config) => (
if (!user || !userInfo) { if (!user || !userInfo) {
return res.redirect('/signin'); return res.redirect('/signin');
} }
let redirect = url.parse(successRedirect(req), true); const redirect = `${homeLocation}/welcome`;
delete redirect.search;
const { accessToken } = userInfo; const { accessToken } = userInfo;
const { provider } = config; const { provider } = config;
@ -146,9 +136,7 @@ we recommend using your email address: ${user.email} to sign in instead.
setAccessTokenToResponse({ accessToken }, req, res); setAccessTokenToResponse({ accessToken }, req, res);
req.login(user); req.login(user);
} }
return res.redirectWithFlash(redirect);
redirect = url.format(redirect);
return res.redirect(redirect);
} }
)(req, res, next); )(req, res, next);
}; };