我希望在OAuth
请求twitter
之后将用户导航到同一页面。我知道这只能通过设置会话变量来完成,但是应该如何完成呢?
目前路由配置如下:
// Authentication routes
(function () {
app.get('/auth/twitter', passport.authenticate('twitter'));
app.get('/auth/twitter/done',
passport.authenticate('twitter', {
failureRedirect : '/auth/error'
}),
function (req, res) {
res.send('Logged In.');
});
app.get('/auth/error', function (req, res) {
res.send('An error has occured.');
});
}());
我可以在路由"/auth/twitter/done"
中读取会话变量并重定向到它包含的页面。但是设置它的正确方法是什么?
app.get('/auth/twitter', passport.authenticate('twitter'),
function (res, req) { res.session.authReturnPage = '...'; });
不起作用。
答案 0 :(得分:0)
在致电req.session.authReturnPage
之前尝试设置passport.authenticate('twitter')
:
app.get('/auth/twitter', function(req, res) {
req.session.authReturnPage = req.headers.referer;
passport.authenticate('twitter');
}