sql >> Database >  >> NoSQL >> MongoDB

Node.js mongodb-stuurprogramma async/wacht op vragen

Aangezien alle antwoorden enkele bits missen (vangblokken, controleren of de client niet null is) ) Ik kwam met mijn eigen oplossing. Getest met Mongo-server v4.0.7 en Node JS-stuurprogramma 3.2.2.

Merk op dat het voorbeeld een consoleprogramma is, waarbij we de verbinding met de server sluiten in de finally blok. In een webapplicatie worden de verbindingen hergebruikt. Zie Node Mongo docs. Ook worden de fouten gelogd met bibliotheken zoals Winston of Morgan en niet in de console gelogd.

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


  1. mongodb krijgt verschillende records

  2. ConnectionMultiplexer.Verbinding verbreekt tijdens verbinding met redis-server

  3. Mongodb wil niet starten

  4. Mongo zoals Query (JSON) uitvoeren via Java