Error handling in async await Error handling in async await mongoose mongoose

Error handling in async await


You will get error in .catch method of async await

Suppose you have a function

handleErrors(req, res, err) {  return res.json({    success: false,    message: err,    data: null  })}

And here is your query

try {  let u = await user.find({ code: id }).lean();  return u;} catch(err) {  handleErrors(req, res, err)  //You will get error here}

You can check here for more


Mongoose maintainer here. The first question has been answered correctly. Re: "Secondly, can we have centralised error handling function which will get triggered whenever an error happens in any of the Mongoose code, it gets directed to a particular function in the project where it can be handled.", try this:

async function run() { await mongoose.connect(connectionString);  const schema = new mongoose.Schema({ n: Number });  schema.post('findOne', function(err, doc, next) { console.log('Got error', err.stack); });  const Test = mongoose.model('Test', schema);  console.log(await Test.findOne({ n: 'not a number' }));}

Here's my blog post on Mongoose error handling middleware