Zoals ik in je opmerking al zei, ontvangt Express in wezen verbindingen voordat de sessieopslag volledig is verbonden. De oplossing is om te wachten tot de verbinding tot stand is gebracht voordat u uw toepassing laat luisteren.
U kunt dit probleem voorkomen door een terugbelverzoek te gebruiken bij het maken van MongoStore, of door een reeds actieve verbinding door te geven.
Voorbeeld met connect-mongo
's terugbellen
var sessionStore = new MongoStore({ url: 'someConnectionUrl', db: 'audio-drop' }, function(e) {
var cookieParser = express.cookieParser('waytoblue');
app.use(cookieParser);
app.use(express.session({
store: sessionStore
}));
app.listen();
});
Eenvoudig voorbeeld van mangoest
var mongoose = require('mongoose');
mongoose.connect('localhost', function(e) {
// If error connecting
if(e) throw e;
var sessionStore = new MongoStore({ mongoose_connection: mongoose.connection }),
cookieParser = express.cookieParser('waytoblue');
app.use(cookieParser);
app.use(express.session({
store: sessionStore
}));
app.listen();
});