código express.js
var mongoose = require("mongoose"); const { db } = require("../../models/userModel"); mongoose.connect("mongodb://cnoxbeta:abdf1234@cnox-beta-document-db.cluster-cvzxy5kwx8pn.us-west-2.docdb.amazonaws.com:27017/cnox?ssl=true&ssl_ca_certs=rds-combined-ca-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false");error:
(node:1239) UnhandledPromiseRejectionWarning: Error: error:0909006C:PEM routines:get_name:no start line at Object.createSecureContext (_tls_common.js:149:17) at Object.connect (_tls_wrap.js:1580:48) at makeConnection (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/cmap/connect.js:274:31) at connect (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/cmap/connect.js:33:5) at checkServer (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/sdam/monitor.js:201:27) at /home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/sdam/monitor.js:231:9 at executeAndReschedule (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/utils.js:791:9) at makeInterruptibleAsyncInterval (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/utils.js:798:9) at Monitor.connect (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/sdam/monitor.js:87:71) at Server.connect (/home/ubuntu/cnox-webbackend/node_modules/mongoose/node_modules/mongodb/lib/sdam/server.js:100:28) (Use `node --trace-warnings ...` to show where the warning was created)Estoy usando aws document db para conectar mi aplicación de nodo. Puedo acceder a mongo db usando shell, por lo que mongodb está bien y acceder a la lista blanca de ip está bien. Algo falla en la conexión. Por favor, eche un vistazo, ¿cómo puedo solucionar esto?
Nota: puedo conectarme usando shell
Compruebe la versión de Mongoose en el archivo package.json .
Con la versión v6+ , no debe agregar las opciones useNewUrlParser y useUnifiedTopology , por lo que debe eliminar estas opciones. Mongoose los configurará como true de forma predeterminada.
¿Puedes probar esto?
mongoose.connect('mongodb://<user>:<pass>@cnox-beta-document-db.cluster-cvzxy5kwx8pn.us-west-2.docdb.amazonaws.com:27017/cnox?replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false', { ssl: true, sslValidate: true, sslCA: `path_to/rds-combined-ca-bundle.pem` });PD: es posible que desee eliminar las credenciales de su pregunta inicial.