sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB:Fejl ved indstilling af TTL-indeks ved samling:sessioner

Som jeg sagde i din kommentar, modtager Express i det væsentlige forbindelser, før sessionsbutikken er fuldt tilsluttet. Løsningen er at vente på, at forbindelsen opstår, før du tillader din applikation at begynde at lytte.

Du kan undgå dette problem ved at bruge et tilbagekald ved oprettelse af MongoStore eller sende en allerede aktiv forbindelse ind.

Eksempel ved at bruge connect-mongo 's tilbagekald

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();
});

Simpelt Mongoose-eksempel

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();
});


  1. MongoDB, tilføje nyt { felt :værdi } i eksisterende indlejret dokument med flere niveauer prik notation?

  2. Projekt for at filtrere egenskab inden for det andet indlejrede array

  3. Redis er det muligt at opdatere flere hset-nøgler (ikke felter) ved hjælp af mset

  4. Mongoose - forespørgsel for at få data fra flere samlinger