Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

633
Vistas
Obteniendo el error: querySrv ECONNREFUSED _mongodb._tcp.auctiondbcluster.s6rzg.mongodb.net. Cuando intento conectarme a localhost cuando estoy desconectado
MongoDB connected... Development server live on http://localhost:3000 node:internal/errors:465 ErrorCaptureStackTrace(err); ^ Error: querySrv ECONNREFUSED _mongodb._tcp.auctiondbcluster.s6rzg.mongodb.net at QueryReqWrap.onresolve [as oncomplete] (node:dns:213:19) { errno: undefined, code: 'ECONNREFUSED', syscall: 'querySrv', hostname: '_mongodb._tcp.auctiondbcluster.s6rzg.mongodb.net' }

Todo funciona sin problemas cuando estoy conectado a mi wifi, pero cuando estoy desconectado e iniciando el servidor, aparece este error. Y, por cierto, no, no estoy tratando de conectarme al clúster en línea de MongoDB, estoy tratando de conectarme al host local (mongodb://localhost:27017/auctionDB).

Aquí la función que estoy usando en app.js

 const runServer = async () =>{ if(process.env.NODE_ENV !== "production"){ await connectDb(process.env.MONGODB_LOCAL_CONNECTION); app.listen(PORT, ()=>{ console.log(`Development server live on http://localhost:${PORT}`); }) } else { await connectDb(process.env.MONGODB_CONNECTION_STRING); app.listen(PORT, ()=>{ console.log(`Production server live on port ${PORT}`); }) } } runServer();

En mi archivo .env , NODE_ENV está configurado en desarrollo. Aquí está la función connectDb.js que estoy usando para conectarme a la base de datos

 const mongoose = require("mongoose"); /** * @description: Connect to the database by providing the connection string. * @param {String} uri | MongoDB URI * @default: mongodb://localhost:27017/auctionDB * * @returns {undefined} */ const connectDb = (url = process.env.MONGODB_LOCAL_CONNECTION) => { try { const con = mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }); if(con) console.log("MongoDB connected...") } catch(e){ console.log(`Error: ${e}`); } }; module.exports = connectDb;

Aquí está todo el proyecto en github

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Debe await la llamada mongoose.connect , no toda la función:

 const connectDb = async (url = process.env.MONGODB_LOCAL_CONNECTION) => { try { const con = await mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }); if(con) console.log("MongoDB connected...") } catch(e){ console.log(`Error: ${e}`); } }; module.exports = connectDb;
 const runServer = () =>{ if(process.env.NODE_ENV !== "production"){ connectDb(process.env.MONGODB_LOCAL_CONNECTION); app.listen(PORT, ()=>{ console.log(`Development server live on http://localhost:${PORT}`); }) } else { connectDb(process.env.MONGODB_CONNECTION_STRING); app.listen(PORT, ()=>{ console.log(`Production server live on port ${PORT}`); }) } } runServer();
about 4 years ago · Juan Pablo Isaza Denunciar

0

Asegúrese de que su URL de MongoDB sea [ mongodb://localhost:27017/ ], y no una URL de MongoDB de conexión en línea. en la línea 13

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda