2016-02-16 55 views
5

我使用compose.io来托管测试和生产mongodb数据库,并试图通过节点应用程序使用mongoose.js(它使用标准引擎下的nodejs mongodb驱动程序)。我的连接选项如下:通过Mongoose.js连接到使用SSL和mongos的Compose.io MongoDB部署

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); 

但连接似乎挂起,但。我没有收到来自服务器的错误,也没有收到“开放”事件。

+0

的[Compose.io文档与猫鼬的MongoDB(HTTPS:/ /help.compose.io/docs/connecting-to-mongodb#section-connecting-with-mongoose-javascript-)帮助这里。 –

回答

9

ANSWER

我能够全部从server选项移动到mongos来解决该问题:

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