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

320
Views
"mensaje": "errorMongooseError: Operación `userinfos.insertOne()` se agotó el tiempo de espera después de 10000ms"

Actualmente estoy creando una nueva API con MongoDB y Express, y actualmente tengo este "mensaje" de problema:

"errorMongooseError: el almacenamiento en búfer de Operation userinfos.insertOne() se agotó después de 10000 ms"

Esta es la forma en que configuro mis llamadas API:

 const express=require('express'); const router=express.Router(); const Userinfo=require("../Models/Userinfo") router.get('/',(req,res)=>{ res.send("we are Post") }); router.get('/Specic', async(req,res)=>{ try{ const data=await Userinfo.find(); console.log(data); res.json(data) } catch(err) { res.json({message:err}) } }) router.post("/",(req,res)=>{ const test= new Userinfo({ "Fname":req.body.Fname, "Lname":req.body.Lname }); console.log(test); test.save().then(data=>{ res.json(data); }).catch((err)=>{res.json({message:"error"+err})}) }) module.exports=router;

Model Definiendo así Userinfo.js

 const mongoose=require('mongoose'); /*const PoistSchema=mongoose.Schema({ Fname:String, Lname:String, DOB:Date.now() });*/ const PostSchema=mongoose.Schema({ Fname:{ type:String, require:true }, Lname:{ type:String, require:true }, DOB:{ type:String, default:Date.now }, }); module.exports=mongoose.model("Userinfo",PostSchema)

Aplicación.js

 const express=require('express'); const app=express(); const mongoose=require('mongoose'); require("dotenv/config"); const bodyParser=require("body-parser") ///Middlewares //app.use(auth); app.use(bodyParser.json()); const postroutes=require("./Routes/Posts"); app.use("/post",postroutes) app.get('/',(req,res)=>{ res.send("we are om") }) app.get('/posts',(req,res)=>{ res.send("we are Post") }) try { mongoose.connect(process.env.DBConnection,{useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex:true},()=>{ console.log("Sucess"); },(error)=>{ console.log(error); }); console.log("ConnectedZZ") } catch (error) { console.log(error); } app.listen(3000);

¿Hay alguna sugerencia para insertar y obtener datos? Al obtener datos, no se obtiene ningún error.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede haber varias razones por las que se produjo este problema, pero comencemos con:

Como podemos leer en documentos

Mongoose le permite comenzar a usar sus modelos de inmediato, sin esperar a que Mongoose establezca una conexión con MongoDB. Esto se debe a que la función del modelo de búfer mongoose llama internamente. Este almacenamiento en búfer es conveniente, pero también una fuente común de confusión. Mongoose no arrojará ningún error de forma predeterminada si usa un modelo sin conectarse.

Entonces parece que su model está siendo llamado antes de que se establezca la conexión. Para manejar este error, debe usar .catch() o probar/atrapar con async/ await. Eso debería resolver su problema.


Aquí tienes un fragmento de código de ejemplo:

 (async () => { try { await mongoose.connect(process.env.DBConnection) console.log('MongoDB connected!!'); } catch (err) { console.log('Failed to connect to MongoDB', err); } })()
about 4 years ago · Juan Pablo Isaza Report

0

puede confirmar si la base de datos es correcta antes de llamar a las llamadas de la base de datos.

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!