Обратный вызов не работает в Connect-Mongo
Я использовал Connect-Mongo в качестве хранилища сессий. connect-mongo@0.4.0.
мой код
app.use(express.session({
store: new MongoStore({
url: 'mongodb://192.168.1.124:27017/ip_session',
}, function(e) {
// Start the app by listening on <port>
var port = process.env.PORT || config.guiPort;
var server = app.listen(port);
console.log('Express app started on port ' + port);
}),
// 2 * 60 * 60 * 1000
cookie: {
expires: new Date(Date.now() + 7200000)
},
secret: '**********'
}));
пока что все работает нормально, но когда я обновил версию connect-mongo до последней (0.8.1). обратный вызов, содержащий скрипт запуска сервера, не работает.
т.е.
function(e) {
var port = process.env.PORT || config.guiPort;
var server = app.listen(port);
console.log('Express app started on port ' + port);
}
вышеуказанный код не работает после обновления версии connect-mongo.
Ваша помощь будет ощутимой. заранее спасибо.
1 ответ
Решение
Судя по коду, случаи MongoStore
генерировать события при изменении его состояния (соединения). Так что, возможно, это работает:
var store = new MongoStore({ url : ... });
store.on('connected', function() {
// Start the app by listening on <port>
var port = process.env.PORT || config.guiPort;
var server = app.listen(port);
console.log('Express app started on port ' + port);
});
app.use(express.session({
store: store,
...
});