2017-01-31 4 views
0

Ich versuche, mongodb für heroku zu gründen, und ich kann erfolgreich verbinden, wenn ich die URL normalerweise in das Skript setze. Wenn ich die URL jedoch lokal aus Umgebungsvariablen abrufe, um sie auszublenden, erhalte ich den Fehler "ungültiges Schema, erwarteter Mongodb".ungültiges Schema, erwartetes mongodb für process.env Variable

Es ist genau die gleiche URL im Format var url = Rückkehr 'mongodb: // username: [email protected]: 39619/food'

Process.env ist nicht asynchron ist es? Ich kann die URL korrekt drucken, bevor die Verbindung fehlschlägt. Ich habe auch den Typ überprüft und es ist auch eine Zeichenfolge.

//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(); 
} 
}); 

Antwort

2

Ich löste das Problem, indem die Anführungszeichen zu entfernen I verwendet wird, wenn die Umgebungsvariablen Speichern

Verwandte Themen