Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

226
Views
Mangosta Error 'uri' parámetro debe ser una cadena sin definir

Cada vez que intento ejecutar el nodo index.js, obtengo "Error [MongooseError]: El parámetro uri para openUri() debe ser una cadena, obtuvo "indefinido". Asegúrese de que el primer parámetro sea mongoose.connect() o mongoose.createConnection() es una cadena"

Además, index.js y .env están en el mismo directorio.

índice.js:

 const express = require('express'); require('dotenv').config(); const bodyParser = require('body-parser'); const mongoose = require('mongoose'); const routes = require('./routes/api'); const path = require('path'); const app = express(); const port = process.env.PORT || 3000; mongoose.connect(process.env.DB, { useNewUrlParser: true }) .then(() => console.log(`Database connected successfully`)) .catch(err => console.log(err)); mongoose.Promise = global.Promise; app.use((req, res, next) => { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); next(); }); app.use(bodyParser.json()); app.use('/api', routes); app.use((err, req, res, next) => { console.log(err); next(); }); app.listen(port, () => { console.log(`Server running on port ${port}`) });

.env:

 NODE_ENV = development PORT = 3000 MONGO_URI = mongodb+srv://"User":1@cluster0.da5tj.mongodb.net/myFirstDatabase?retryWrites=true&w=majority
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Estaba teniendo el mismo problema y esto funcionó para mí. Requerir en dotenv.

 require('dotenv').config()

... y configurando el archivo .env con la variable MONGO_URI = mi conexión a la base de datos

... y finalmente asegurándose de pasar lo siguiente a mongoose.connect:

 process.env.MONGO_URI

Espero que ayude. Soy novato, así que no cuentes conmigo para responder muchas preguntas.

about 4 years ago · Juan Pablo Isaza Report

0

Solo tiene un pequeño error aquí, pero aquí está la solución, su .env almacena su cadena de conexión como MONGO_URI y su código principal está llamando a process.env.DB , lo que causa el error de mangosta que está recibiendo, ejecuté su código con mi db y funciona bien, su código debería ser como el siguiente sin cambiar su archivo .env

 const express = require('express'); require('dotenv').config(); const bodyParser = require('body-parser'); const mongoose = require('mongoose'); const routes = require('./routes/api'); const path = require('path'); const app = express(); const port = process.env.PORT || 3000; mongoose.connect(process.env.MONGO_URI, { useNewUrlParser: true }) .then(() => console.log(`Database connected successfully`)) .catch(err => console.log(err)); mongoose.Promise = global.Promise; app.use((req, res, next) => { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); next(); }); app.use(bodyParser.json()); app.use('/api', routes); app.use((err, req, res, next) => { console.log(err); next(); }); app.listen(port, () => { console.log(`Server running on port ${port}`) });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!