Node.js+express.js+passport.js :оставайтесь аутентифицированными между перезапусками сервера

Я использую паспорт.js для обработки аутентификации в моем приложении nodejs + express.js. Я настроил LocalStrategy, чтобы брать пользователей из mongodb

. Моя проблема в том, что пользователи должны повторно -аутентифицироваться, когда я перезапускаю сервер узла . Это проблема, поскольку я активно разрабатываю ее и не хочу входить в систему при каждом перезапуске... (+ Я использую диспетчер узлов)

Вот моя настройка приложения:

app.configure(function(){
    app.use('/static', express.static(__dirname + '/static'));
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(express.cookieParser());
    app.use(express.session({secret:'something'}));
    app.use(passport.initialize());
    app.use(passport.session());
    app.use(app.router);
});

И настройка сериализации сеанса:

passport.serializeUser(function(user, done) {
    done(null, user.email);
});

passport.deserializeUser(function(email, done) {
    User.findOne({email:email}, function(err, user) {
        done(err, user);
    });
});

Я попробовал решение, данное в блоге (удалил ссылку, так как ее больше не существует)безуспешно использовал соединение-mongodb

app.use(express.session({
    secret:'something else',
    cookie: {maxAge: 60000 * 60 * 24 * 30}, // 30 days
        store: MongoDBStore({
        db: mongoose.connection.db
    })
}));

РЕДАКТИРОВАТЬ дополнительная проблема :должно быть только одно соединение сделал (использовал один connexion limited mongohq бесплатный сервис)

РЕДАКТИРОВАТЬ 2 решение (как редакцию, так как моя репутация слишком низкая, чтобы ответить на мой вопрос к настоящему времени

Вот решение, которое я наконец нашел, используя соединение, инициированное мангустом

app.use(express.session({
    secret:'awesome unicorns',
    maxAge: new Date(Date.now() + 3600000),
    store: new MongoStore(
        {db:mongoose.connection.db},
        function(err){
            console.log(err || 'connect-mongodb setup ok');
        })
}));
70
задан Arnaud Rinquin 15 March 2013 в 10:39
поделиться