node.js - 无法使用 mongoose 连接到 compose.io mongodb 实例

标签 node.js ssl mongoose compose-db

我正在使用这些说明: https://help.compose.com/docs/connecting-to-mongodb#mongoose-node-and-compose

这是他们给我的连接字符串:

MONGO_URI=mongodb://*****:******@aws-us-west-2-portal.1.dblayer.com:15782,aws-us-west-2-portal.0.dblayer.com:15782/mydbname?ssl=true

这是我正在尝试的代码:

certFileBuff = [fs.readFileSync(MONGO_CERT_PATH)]
options = {
     mongos: true,
     sslCA: certFileBuff,
     sslValidate: false,
     ssl: true
}

mongoose.connect(MONGO_URI, options)

此时我收到身份验证失败错误:

如果我从连接字符串中删除 ?ssl=true 我会收到错误消息: 没有可用的 mongos 代理

最近有人用 mongoose 和 compose.io 一起工作吗?

最佳答案

如果您不在 mongo 中使用分片,请将 mongos 设置为 false。 您可以在此处阅读有关 mongo 中分片的信息 https://docs.mongodb.com/manual/core/sharded-cluster-query-router/

关于node.js - 无法使用 mongoose 连接到 compose.io mongodb 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42321121/

相关文章:

c - SSL_read() 返回 0,SSL_get_error 返回 6。为什么在 SSL_read() 期间连接关闭?

javascript - 在 Node.js 中导出 Mongoose 代码 - 将值从 Mongoose 方法传递给回调

Node.js 和 Socket.io - 如何使用 emit 函数发送数组

node.js - 使用 Forever 运行的 NodeJS 应用程序在浏览器中出现 502 错误

windows - 如何获取 Internet Explorer 支持的 SSL/TLS 密码列表

java - 当根证书已存在于 cacert 文件中时,是否需要导入子 CA 证书?

javascript - 在 Mongoose 中更新许多

node.js - 在nodeJs中执行乘法时返回Nan

node.js - 无法使用 Typescript 3.8.3 版本从 NodeJs 12 中的 Promise.allSettled 获取值

javascript - Cordova iOS 平台没有Api.js