2016-02-16 9 views
5

Sto utilizzando compose.io per ospitare database di test e produzione mongodb e sto tentando di connettermi tramite un'app nodo utilizzando mongoose.js (che utilizza lo standard nodejs mongodb driver under the hood). Le mie opzioni di connessione sono i seguenti:Connessione alla distribuzione di Compose.io MongoDB tramite SSL e mongos tramite 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); 

Il collegamento sembra solo per appendere, però. Non ricevo un errore dal server, né ricevo un evento 'aperto'.

+0

Le [documentazione Compose.io per MongoDB con Mongoose] (https://help.compose.io/docs/connecting-to-mongodb#section-connecting-with-mongoose-javascript-) aiuta qui. –

risposta

9

RISPOSTA

sono stato in grado di risolvere il problema spostando tutte le opzioni da server in mongos:

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