Étant donné que toutes les réponses manquent de bits (blocs catch, vérification que le client n'est pas null
) Je suis venu avec ma propre solution. Testé avec le serveur Mongo v4.0.7 et le pilote Node JS 3.2.2.
Notez que l'exemple est un programme console, où nous fermons la connexion au serveur dans le finally
bloc. Dans une application Web, les connexions sont réutilisées. Voir les docs Node Mongo. De plus, les erreurs sont consignées avec des bibliothèques telles que Winston ou Morgan et non consignées sur la console.
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
async function findOne() {
const client = await MongoClient.connect(url, { useNewUrlParser: true })
.catch(err => { console.log(err); });
if (!client) {
return;
}
try {
const db = client.db("testdb");
let collection = db.collection('cars');
let query = { name: 'Volkswagen' }
let res = await collection.findOne(query);
console.log(res);
} catch (err) {
console.log(err);
} finally {
client.close();
}
}
await findOne();