通过Mongoose.js

时间:2016-02-16 18:02:25

标签: node.js mongodb ssl compose

我正在使用compose.io来托管测试和生产mongodb数据库,并尝试使用mongoose.js(它使用标准nodejs mongodb驱动程序)通过节点应用程序进行连接。我的连接选项如下:

var connectionString = 'mongodb://user:password@host1: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);

但是,连接似乎仍然悬而未决。我没有从服务器收到错误,也没有收到“开放”事件。

1 个答案:

答案 0 :(得分:9)

ANSWER

我可以通过将所有选项从server移到mongos来解决问题:

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