Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Tratar erros com resource

Olá bípedes, como faço para tratar erros no delete? Mando uma requisição com o metodo delete para minha API e se poder apagar ela retorna um 200, caso contrário 500, como faço para que esse retorno 500 não seja jogado no console?

P.S.: Imagino que seja uma má pratica devolver assim, porém a API não é de autoria minha.

4 respostas

No callback de tratamento de erro que é o segundo parâmetro você pode tratar o erro e dar uma resposta adequada ao usuário.

Olá Flavio, não seria isso, estou falando que, mesmo com a função de callback, no caso

$flow.delete({
    id: Id
}, function(response){
    resolve();
}, function(err){
    //mesmo fazendo isso
})

mesmo fazendo o que foi descrito acima, que é o que consta na documentação do resource, o console ainda é logado um erro 500, já como isso é um retorno padrão da API, apesar de defender fortemente que isso é uma péssima pratica pois as promisses nunca retornam como concluídas, é o que eu obtenho de resposta e gostaria que não fosse logado ESTE erro, tentei utilizar até o trycatch, porém é o mesmo resultado. Desde já agradeço o tempo e a resposta.

solução!

Se você diz que a msg no log é compulsoria e feita automaticamente sem o seu consentimento não podemos fazer muita coisa. Só alterando o fonte do módulo resource. Talvez nem isso, porque o browser se encarrega do log.

Qual o problema para o usuário essa info aparecer no console ? Fiquei na dúvida.

Imagino que como desenvolvedor, por mais que seja algo extremamente simples, temos que polir ao máximo o que estamos produzindo, já como a resposta 500 neste caso é uma resposta comum, seria bom oculta-la do usuário. O que na verdade seria falar com o navegador: "rapaz, eu sei que este 500 ocorre quando esse método é chamado, então não precisa logar isso no console", mas como não tem como, obrigado de qualquer forma Flavio