2015-03-23 5 views
1

Im пытается отключить сеанс в файле passport.js, но он не работает, мне все равно нужно добавить экспресс-сессию.Как отключить сеанс в паспорте?

код:

router.get('/twitter', function(req, res, next){ 

    passport.authenticate('twitter', {session: false}, function(err, user, info){ 
    if(err){ return next(err); } 

    if(user){ 
     var token = createToken(user); 
     return res.json({token: token}); 
    } else { 
     return res.status(401).json(info); 
    } 
    })(req, res, next); 
}); 

Как изменить сеанс по умолчанию паспорта в этом коде?

ответ

-1

Я считаю, что вы просто регистрируете пользователя, используя req.logout(); ,

0

Проблема в том, что сеансы необходимы для OAuth 1.0 (используется версия twitter). OAuth 1.0 требует «секретный» транзакции, который обменивается перед перенаправлением и проверяется после перенаправления. Этот секрет хранится в сеансе, следовательно, почему сеансы необходимы для любых стратегий на основе OAuth 1.0.

Другими словами, вы не можете установить сессию в false при использовании стратегии Twitter.

Смежные вопросы