如何在NodeJS应用程序中定义Mongo连接时将其部署在heroku

时间:2016-04-13 20:28:00

标签: node.js mongodb heroku

我正在尝试使用mLab MongoDB插件将我的第一个应用程序部署到heroku。我该如何定义连接?

这是我在NodeJS书中发现的,但它似乎不起作用。我用适当的值替换了密码和数据库名称。

mongoose.connect('mongodb://databasename:password@kahana.mongohq.com:10089/app26');
mongoose.connection.on('open', function() {
    console.log('Mongoose connected.');
});

1 个答案:

答案 0 :(得分:1)

你应该使用Heroku环境变量。当你添加一个Mongo插件时,你应该自动获得环境变量(这些也可以通过Heroku仪表板访问)。因此,使用MLAB,您可以通过访问process.env.MONGOLAB_URI来获取连接字符串。所以你可以mongoose.connect(process.env.MONGOLAB_URI);

要让您的本地化工作正常,请运行heroku config > .env将环境变量导出到应用根目录的.env文件中。然后,当您运行heroku local时,MONGOLAB_URI env变量也将在您的localhost上可用。