Това приключи като проблем на различните модули:connect-session-mongo / express-session-mongo / connect-mongo, използвайки connect 2.0.1 и Express, използвайки connect 1.8.5.
Очевидно сблъсъкът на зависимости тук е попречил на модулите за съхранение на сесии да имат достъп до свойството „req.secret“.
За да проработи, прекратих използването на модула connect-mongodb, който все още използва connect 1.8.5, точно като Express.
Причината, поради която не можех да накарам connect-mongodb да работи преди обаче, беше потребителска грешка, опитвах се твърде много да използвам копиране/поставяне от онлайн примери вместо от главата си.
Ето конфигурационния код, който в крайна сметка работи за мен с connect-mongodb:
var Session = require('connect-mongodb');
app.configure('production', function(){
var oneWeek = 657450000;
app.use(express.static(__dirname + '/../public', { maxAge: oneWeek }));
var session = express.session({
store: new Session({
url: 'mongodb://localhost:27017/test',
maxAge: 300000
}),
secret: 'superTopSecret'
});
app.use(session);
app.use(mongooseAuth.middleware());
app.use(require('./mySite').middleware());
app.use(express.methodOverride());
app.use(express.errorHandler());
});
Надявам се това да помогне на всеки друг, който се сблъска с този проблем. Ако имате някакво предложение/подобрение за това решение, ще се радвам да го чуя. :)