2
respostas

[Dúvida] Dúvida em relação a tratamento de erro no corpo da requisição

Alô, professora, beleza. Estou adicionando algumas outras funções no projeto, e eu quero adicionar mensagens no corpo da requisição, caso o usuário esqueça de colocar algum parâmetro, ex: nome, senha ...

Eu vim do Node.js e lá com uma linha de código já consigo orientar o usuário para o que fazer: if (!senha) return res.status(400).json({ message: 'Coloque uma senha' }), além de consegui pegar essa mensagem no front end depois.

Criei uma class BusinessRuleException para colocar os erros, mas eles aparecem apenas no meu console, não em forma de "aviso" para o usuário. Como posso tratar esses erros igual no Node.js, tem como?

2 respostas

Boa tarde, Pedro. Tem como sim. Você pode capturar a exceção e retornar a mensagem no formato JSON, como no Node.js. Use um try-catch dentro do controller para lançar uma BusinessRuleException e retornar um BadRequest(new { message = ex.Message }). Isso permitirá que o front-end receba a mensagem corretamente. Se quiser um tratamento global para todas as exceções, pode usar um middleware para capturar e formatar os erros automaticamente.

Certo. Muito obrigado.