无效的模式,process.env变量的预期mongodb

时间:2017-01-31 23:50:14

标签: node.js mongodb heroku

我正在尝试为heroku设置mongodb,如果我将url正常放入脚本,我可以成功连接。但是,当我从本地环境变量中检索url以隐藏它时,我收到错误'invalid schema,expected mongodb'。

它以格式返回完全相同的url var url ='mongodb:// username:password@ds139619.mlab.com:39619 / food'

Process.env不是异步的吗?我可以在连接失败之前正确打印网址。我也检查了类型,它也是一个字符串。

//var url = 'mongodb://<username>:<password>@ds139619.mlab.com:39619/food';
var url = process.env.MONGOLAB_URI;
var ok = process.env.MONGOLAB_URI;

console.log(ok);


// Use connect method to connect to the Server
MongoClient.connect(url, function (err, db) {
if (err) {
    console.log('Unable to connect to the mongoDB server. Error:', err);
} else {
    console.log('Connection established to', url);

    // do some work here with the database.

    //Close connection
    db.close();
}
});

1 个答案:

答案 0 :(得分:3)

我通过删除保存环境变量时使用的引号来解决问题