Minha dúvida é: esse "catch" está capturando qual erro para ser tratado? Como eu sei, somente olhando qual erro que o "catch" está tratando?
Minha dúvida é: esse "catch" está capturando qual erro para ser tratado? Como eu sei, somente olhando qual erro que o "catch" está tratando?
Oii, Luidi!
O catch
no seu código tá capturando qualquer erro que ocorra dentro do bloco try
. No caso específico do seu exemplo, ele está capturando erros que possam ocorrer ao tentar executar livros.find()
. Isso pode incluir erros de conexão com o banco de dados ou problemas na consulta.
Pra saber qual erro está sendo tratado, você pode verificar como o erro é manipulado após ser capturado. No seu caso, o erro é passado para a função next(erro)
, que tá configurada pra ser tratada por um middleware de manipulação de erros.
O middleware manipuladorDeErros
que você mostrou tá configurado para tratar diferentes tipos de erros, como mongoose.Error.CastError
e mongoose.Error.ValidationError
. Ele verifica a instância do erro e envia uma resposta apropriada com base no tipo de erro.