sails.js与passport-twitter

Sve*_*ven 6 node.js express sails.js passport-twitter passport.js

我整合passportsails.

虽然谷歌和Facebook在我的应用程序中运行良好,但我很难与twitter认证!当点击"使用推特登录"按钮时,会出现一个错误:Error: OAuthStrategy requires session support. Did you forget app.use(express.session(...))?

在这里读到,会话是Twitter身份验证工作所必需的.我确保我的应用已激活会话!

passport-twitter用一个简单的快速应用程序(没有风帆)测试,以确保模块正常工作,我的Twitter凭据完好无损.

我假设风帆会议不同于表达会话?帆会改变会议的工作方式吗?关于如何解决这个问题的任何建议?


编辑:在评论中添加了一些更多信息:

帆版本:0.9.13

UserController.js:

...
twitter: function(res, req) {
    passport.authenticate('twitter', {failureRedirect: '/login'}, function(err, user, info) {
      return console.log(err, user, info);
    })(req, res);
  }
...
Run Code Online (Sandbox Code Playgroud)

配置/ passport.js:

...
passport.use(new TwitterStrategy({
    consumerKey: '**************',
    consumerSecret: '********************',
    callbackURL: "http://127.0.0.1:1337/auth/twitter/callback"
  },
  function(token, tokenSecret, profile, done){
    process.nextTick(function() {
      console.log(profile);
    });
  }
));
...
Run Code Online (Sandbox Code Playgroud)

Die*_*mio 2

您是否尝试过 sails-generate-auth 与 sails 0.10 ?从我的角度来看,它让生活变得更轻松:https ://www.npmjs.org/package/sails-generate-auth