如何将mLab数据库URL用于本地node.js应用程序?

时间:2019-05-21 20:18:47

标签: node.js mongodb git mlab

我有一个使用本地MongoDB数据库的本地node.js应用程序。但是现在我想使用mlab作为数据库。我从mlab获得了一个URL,但是每当我尝试将其连接到本地应用程序时,都会出现此错误;

MongoError: not authorized on admin to execute command.

这是本地脚本的样子;

// build mongo database connection url //

process.env.DB_HOST = process.env.DB_HOST || 'localhost'
process.env.DB_PORT = process.env.DB_PORT || 27017;
process.env.DB_NAME = process.env.DB_NAME || 'node-login';

if (app.get('env') != 'live'){
    process.env.DB_URL = 'mongodb://'+process.env.DB_HOST+':'+process.env.DB_PORT;
}   else {
// prepend url with authentication credentials // 
    process.env.DB_URL = 'mongodb://'+process.env.DB_USER+':'+process.env.DB_PASS+'@'+process.env.DB_HOST+':'+process.env.DB_PORT;
}

app.use(session({
    secret: 'faeb4453e5d14fe6f6d04637f78077c76c73d1b4',
    proxy: true,
    resave: true,
    saveUninitialized: true,
    store: new MongoStore({ url: process.env.DB_URL })
    })
);

我从mlab帐户获得了以下密钥; mongodb://mongo:xxxxxxxxxx@ds259586.mlab.com:59586/heroku_t8xqw6t1

如何用获得的链接填写以上if / else语句?

我想将上述URL替换为旧的本地URL。这样mlab便成为我的本地数据库。

0 个答案:

没有答案