【问题标题】:TypeError: Object #<Object> has no method 'authenticate'TypeError: Object #<Object> 没有方法 'authenticate'
【发布时间】:2015-05-08 19:06:22
【问题描述】:

我正在集成 SailsJS 和 Passport。我有一个相当简单的控制器,但是在处理登录的“过程”方法中,我收到以下错误:

TypeError: Object #&lt;Object&gt; has no method 'authenticate'

您可以在控制器中看到我正在调用 passport.authenticate() 方法,根据文档,这应该存在。

LoginController.js

module.exports = {
  login: function(req, res) {
    res.view("login",{});
  },
  process: function(req, res) {

    passport.authenticate('local', function(err, user, info) {
      if( (err)||(!user) ) {
        return res.send({
          message: 'login failed'
        });
        res.send(err);
      }
      req.logIn(user, function(err) {
        if(err) res.send(err);
        return res.send({
          message: 'login successful'
        });
      });
    }) (req, res);
  },

  logout: function(req, res) {
    req.logOut();
    res.send('logout successful');
  }
};

【问题讨论】:

  • 您在哪里需要护照?
  • @idbehold 好吧,不幸的是我不是。我是一名在 NodeJS 中工作的 Java 程序员,哈哈,我认为 SailsJS 中的 npm 安装是用 grunt 包裹起来的,并且会自动包含一些

标签: javascript node.js sails.js passport.js passport-local


【解决方案1】:

@idbehold 得到了这个,我在任何地方都不需要护照。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多