Express Session:Object#<object>没有方法'on'</object>

时间:2013-03-31 22:59:11

标签: node.js express

我正在使用ExpressJS并且一直试图让PassportJS正常运行。在我的express.js配置中,我有以下内容:

app.configure(function () {
        // dynamic helpers
        app.use(helpers(config.app.name));

        // cookieParser should be above session
        app.use(express.cookieParser());

        // bodyParser should be above methodOverride
        app.use(express.bodyParser());
        app.use(express.methodOverride());

        // express/mongo session storage
        app.use(express.session({
          secret: 'noobjs',
          store: new mongoStore({
            url: config.db,
            collection : 'sessions'
          })
        }));

        // connect flash for flash messages
        app.use(flash());

        // use passport session
        app.use(passport.initialize());
        app.use(passport.session());

...

不幸的是,当我运行应用程序时出现以下错误: -

store.on('disconnect', function(){ storeReady = false; });
^
TypeError: Object #<Object> has no method 'on'

我认为它与初始化顺序有关,但是我太缺乏经验,不知道订单应该是什么。

有人可以提供一些方向吗?

1 个答案:

答案 0 :(得分:1)

npm咬我的屁股。我带错了包裹。问题解决了。

作为参考,正确的包裹为npm install connect-mongo