Node.js无法连接到从Heroku到Mongolab的mongodb 3:SCRAM-SHA-1

时间:2015-10-16 13:06:29

标签: node.js mongodb heroku mongoose mlab

MongoLab最近将mongoDb版本更新为3.x.为了尝试重现环境,我将本地版本的node.js更新为4.x,将mongodb更新为3.x,将mongoose更新为3.8。

在我的本地环境中,我能够连接到mongoDb但是在heroku中我无法连接。 发生以下错误:

  

无法连接到mongodb以获取地址mongodb:// user:password @ host:port / dbname

我怀疑是较旧版本的mongoose,或者连接方式不好,但为什么它适用于我的本地环境? 我在这里如何将节点连接到mongoDb:

var uriString = process.env.MONGOLAB_URI || process.env.MONGOHQ_URL
mongoose.connect(uriString, function (err, res) {
    if (err) {
        console.log('fail to connect to mongodb for address ' +       uriString);
    } else {
        console.log('Connection to mongodb ok');
    }
});

1 个答案:

答案 0 :(得分:1)

我找到了答案,

看起来Mongoose 4.0.0支持MongoDB 3.0:Like mongodb doc illustrate

因此,在将mongoose升级到v4.x后,我现在可以使用SCRAM SHA 1凭证连接到mongoDB。