用passport.js twitterlogin重新login用户

在护照我有Twitterauthentication。 一切都很好login明智。 我有这个代码

app.get('/auth/twitter', function (req, res) { if (req.user) { return res.redirect('/'); } return passport.authenticate('twitter')(req, res); }); 

所以,如果用户已经使用twitterlogin到我的网站,它只是redirect回来(可能最终会给出一个消息)。 一旦他们注销该网站,他们再次点击logintwitter,再次将他们带到Twitter授权应用程序页面。 它不应该。 当我看着其他网站,它从来没有要求我再次授权的应用程序。 如果我查看我的twitter个人资料的授权应用程序部分,我看到我正在开发的应用程序。

为什么我的应用程序在我已经提供的时候一直要求授权? 我怎样才能改变这个(我存储令牌和token_secret DB)? 谢谢您的帮助。

我最近在我的开发系统中遇到同样的问题,而不是在生产中。

我的问题追溯到Twitter上的应用程序设置。 当我去Twitter的开发网站,并开始仔细比较我的DEV和PROD系统的select,我注意到我的应用程序的设置选项卡上的差异,其中“允许此应用程序用于loginTwitter“checkbox未被选中用于我的DEV,但用于我的PROD系统。

在应用程序设置选项卡上的checkbox下的小打印说:

启用后,您的应用程序可用于“使用Twitterlogin”。 当禁用时,你的应用程序将不能使用/ oauth / authenticate,任何对它的请求都会将用户redirect到/ oauth / authorize

authentication与authentication之间的区别并不清楚术语,但authentication时要求确认每一次authentication“记住”用户的select。

我做了这个单一的更改后,我的DEV系统停止询问我的授权相关的确认,每次我通过Twittertestinglogin…