Retrait des documents à partir d'une collection de mongodb à partir de node.js

Je suis totalement nouveau pour mongoDB et pas d'expérience avec Node.js s'il vous plaît excuser si le code ci-dessous est loin d'être parfait.

L'objectif est de supprimer un document à partir d'une collection, référencé par son _id. Le déménagement est terminé (archivé shell mongo), mais le code n'est pas une fin (l'exécution de node myscript.js ne pas obtenir mon dos shell). Si j'ajoute un db.close() - je obtenir { [MongoError: Connection Closed By Application] name: 'MongoError' }.

var MongoClient = require("mongodb").MongoClient;
var ObjectID = require("mongodb").ObjectID;

MongoClient.connect('mongodb://localhost/mochatests', function(err, db) {
    if (err) {
        console.log("error connecting");
        throw err;
    }
    db.collection('contacts', {}, function(err, contacts) {
        if (err) {
            console.log("error getting collection");
            throw err;
        }
        contacts.remove({_id: ObjectID("52b2f757b8116e1df2eb46ac")}, {safe: true}, function(err, result) {
            if (err) {
                console.log(err);
                throw err;
            }
            console.log(result);
        });
    });
    db.close();
});

N'ai-je pas de fermer la connexion? Ce qui se passe quand je ne suis pas le fermer et le programme n'a pas de fin?

Merci!

Rien ne se passe, votre programme est juste en attente pour certains d'I/O de Mongo pilote. Bien sûr, vous savez que rien ne va arriver, ni vous de ne pas envoyer quoi que ce soit, mais le Nœud ne le sait pas et donc il ne peut pas terminer.

OriginalL'auteur marc0s | 2013-12-20