MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como corrigir MongoError:Não é possível usar uma sessão que terminou


No seu código, ele não espera pelo find() para completar sua execução e vai para o client.close() declaração. Então, quando ele tenta ler os dados do banco de dados, a conexão já foi encerrada. Eu enfrentei esse mesmo problema e resolvi assim:
// connect to your cluster
const client = await MongoClient.connect('yourMongoURL', { 
    useNewUrlParser: true, 
    useUnifiedTopology: true,
});
// specify the DB's name
const db = client.db('nameOfYourDB');
// execute find query
const items = await db.collection('items').find({}).toArray();
console.log(items);
// close connection
client.close();

EDIT:tudo isso deve estar em um async função.