无法连接到MongoDB Atlas

时间:2019-07-06 09:26:34

标签: mongodb heroku

我正在尝试连接到MongoDB Atlas上的数据库,并继续出现此错误:

throw new Error('invalid schema, expected mongodb');

我试图通过外壳进行连接并且可以正常工作,所以我知道连接可用。

这是我的代码:

var mongodb = require('mongodb');

var MongoClient = mongodb.MongoClient;
let connMongoDB = MongoClient.connect(process.env.MONGODB_URI, function (err, db) {
    if (err) {
        console.log(err)
    }
    db.close();
});

module.exports = function () {
    return connMongoDB;
}

在我的.env中,

MONGODB_URI=mongodb+srv://orsUser:password@cluster0-2zrmd.mongodb.net/test?retryWrites=true&w=majority

1 个答案:

答案 0 :(得分:0)

  

在我的.env中,

MONGODB_URI=mongodb+srv://orsUser:password@cluster0-2zrmd.mongodb.net/test?retryWrites=true&w=majority

您的.env文件可能不会影响Heroku。

generally shouldn't be committed to your repository,毕竟这只是填充正在运行的应用程序的environment的便捷方法。 Heroku通过其命令行或Web控制台包含configuration via the environment,因此也包含supports environment variable modification

例如,您可以运行

heroku config:set MONGODB_URI='mongodb+srv://orsUser:password@cluster0-2zrmd.mongodb.net/test?retryWrites=true&w=majority'

设置MONGODB_URI环境变量。完成后,您的process.env.MONGODB_URI应该会按预期填充。