MongoDB как переменная в узле.js

Я пытаюсь войти и обновить мою базу данных mongo на стороне сервера и возникли проблемы. Я работаю на Heroku, поэтому я думаю, что это может быть, что я не вошел в систему как пользователь. Я начал с этого узла login repo, но изменил несколько вещей, чтобы заставить его работать на heroku. Я пытаюсь войти в систему как переменная, как so:

var MongoDB     = require('mongodb').Db;
var Server      = require('mongodb').Server;    
var db = new MongoDB(dbName, new Server(dbHost, dbPort, {auto_reconnect: true}), {w: 1}); 

Когда я пытаюсь зарегистрировать пользователя, я вижу сообщение, сделанное в журналах heroku, С 400 ответами вместо 200 ok, заставляя меня думать, что я не попадаю в базу данных. Я установил значения dbName, dbHost и dbPort для mongolab, но я не уверен, где войти в учетную запись пользователя. Я создал сеанс с помощью URI

new MongoStore({ url: 'mongodb://username:password@host:port/database' })

который не работал, прежде чем я добавил имя пользователя и пароль, который заставляет меня думать, что это то, что я пропускаю с переменной. Как добавить имя пользователя и пароль в переменную db?

1 ответ

  1. Вы можете использовать MongoClient объект библиотеки’ mongodb ‘ и предоставить url auth в качестве параметра в функции connect

    var MongoClient = require('mongodb').MongoClient;
    var url = 'mongodb://username:password@host:port/database';
    MongoClient.connect(url, function(err, db) {
     assert.equal(null, err);
     console.log("Connected correctly to server.");
    });