2016-02-16 8 views
5

Ich verwende compose.io für Hosting-Test und Produktion mongodb Datenbanken und versuche, über eine Knoten-App mit mongoose.js (die den Standard verwendet nodejs mongodb Treiber unter der Haube). Meine Verbindungsoptionen sind wie folgt:Verbinden mit Compose.io MongoDB Deployment mit SSL und Mongos über Mongoose.js

var connectionString = 'mongodb://user:[email protected]:port1,host2:port2/dbname?ssl=true'; 

var options = { 
    mongos: true, 
    server: { 
    ssl: true, 
    sslValidate: true, 
    sslCA: [fs.readFileSync('/path/to/cert/certificate.pem')] // cert from compose.io dashboard 
    } 
} 

mongoose.createConnection(connectionString, options); 

Die Verbindung scheint nur zu hängen, obwohl. Ich erhalte weder einen Fehler vom Server, noch bekomme ich ein "offenes" Ereignis.

+0

Die [Compose.io docs für MongoDB mit Mungo] (https://help.compose.io/docs/connecting-to-mongodb#section-connecting-with-mongoose-javascript-) Hilfe hier. –

Antwort

9

ANTWORT

Ich konnte das Problem beheben, indem Sie alle Optionen von server in mongos bewegen:

var options = { 
    mongos: { 
    ssl: true, 
    sslValidate: true, 
    sslCA: [fs.readFileSync('/path/to/cert/certificate.pem')] // cert from compose.io dashboard 
    } 
}