使用 Node Express 连接到 MongoDB

首先,确保你已经安装了 mongodb 并通过 npm 表达。然后,在通常标题为 db.js 的文件中,使用以下代码:

var MongoClient = require('mongodb').MongoClient

var state = {
    db: null,
}

exports.connect = function(url, done) {
    if (state.db) return done()

    MongoClient.connect(url, function(err, db) {
        if(err) return done(err)
        state.db = db
        done()
    })
}

exports.get = function() {
    return state.db
}

exports.close = function(done) {
    if (state.db) {
        state.db.close(function(err, result) {
            state.db = null;
            state.mode = null;
            done(err);
        })
    } 
}

此文件将连接到数据库,然后你可以使用 get 方法返回的 db 对象。 ****

现在,你需要在 app.js 文件中包含 db 文件。假设你的 db.js 文件与 app.js 位于同一目录中,你可以插入以下行:

var db = require('./db');

但是,这实际上并不会将你连接到 MongoDB 实例。为此,在调用 app.listen 方法之前插入以下代码。在我们的示例中,我们将错误处理和 app.listen 方法集成到数据库连接中。请注意,只有在 Express 应用程序所在的同一台计算机上运行 mongo 实例时,此代码才有效。

db.connect('mongodb://localhost:27017/databasename', function(err) {
    if (err) {
        console.log('Unable to connect to Mongo.');
        process.exit(1);
    } else {
        app.listen(3000, function() {
            console.log('Listening on port 3000...');
        });
    }
});

在那里,你的 Express 应用程序现在应该连接到你的 Mongo DB。恭喜!