sql >> Database >  >> NoSQL >> MongoDB

MongoDB:fout bij het instellen van TTL-index bij verzameling:sessies

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


  1. MongoDB - Reageren op upvoting/downvoting met aggregatiepijplijn

  2. Hoe maak je een DB voor MongoDB-container bij het opstarten?

  3. Waarden toevoegen aan een bson.D-object

  4. Kan mongodb niet correct installeren op ubuntu 18.04 LTS