Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Tratamento de Erros com Promessas vs Try Catch

No curso de NodeJs:Streaming de Dados e Repositório, os erros eram tratados por promessas com o reject(), onde estes erros eram recuperados no controller no .catch(). Neste curso, é adotado o threw new error que é então recuperado no bloco {try, catch}. Gostaria de saber se em grandes aplicações usando Node.js, com vários endpoints e vários tratamentos de erros na API, qual dos dois tratamentos é mais adequado. Seria este apresentado no curso usando {try, catch} ? Ele me parece mais organizado, e o tratamento do erro não precisa ser feito em várias promessas, mas em um único lugar...

1 resposta
solução!

Oi, Igor! Tudo bem?

O Reject de uma Promise pode ajudar para análisar os erros de uma promessa e trabalhar com ela, nesse cenário acho ela uma excelente alternativa.

A questão é que com o tempo, o JavaScript introduziu uma outra maneira de trabalhar com Promises, o async await. Com ele, é mais comum usar o throw new... e em algum lugar do seu código, capturar esse erro lançado.

Então, a preferência nos sistemas é usar o throw new..., até mesmo porque você pode personalizar suas próprias classes de erros.

Aqui um artigo sobre async/await se você quiser ver mais sobre.

Espero ter ajudado!