Para lidar com erros de forma eficaz, é essencial compreender os tipos de erros que podem ocorrer. Vamos começar categorizando os erros que você pode encontrar.
Vários tipos de erros podem ocorrer. No entanto, esses erros geralmente podem ser classificados em duas categorias:
Vamos categorizar os erros que discutimos nessas classificações.
Erros recebidos de APIs de servidor com códigos de status claros podem ser considerados Erros esperados porque podem ser antecipados e resolvidos com antecedência.
Por exemplo, erros como acesso não autorizado (401) ou acesso proibido (403) podem ser tratados adequadamente com base na situação. Também é comum definir códigos de erro mais detalhados para cada código de status para gerenciar a lógica do aplicativo em resposta a erros. Eles são chamados de erros esperados.
Por outro lado, erros de servidor na faixa 500 são classificados como Erros Inesperados porque são imprevisíveis. Situações em que o servidor não consegue responder por qualquer motivo podem ocorrer a qualquer momento. Além disso, erros que podem surgir devido ao ambiente de rede ou ao ambiente do navegador do usuário são difíceis de prever e, portanto, são classificados como Erros Inesperados.
Os erros também podem ser classificados com base na interação com o usuário, e não apenas no ambiente. Uma maneira de categorizar os erros é considerar se o usuário pode fazer algo a respeito do erro. Aqui estão os critérios para esta classificação:
Por exemplo, erros de autenticação ou autorização se enquadram nesta categoria. Um usuário que não esteja conectado pode encontrar um erro de status 401. Nesse caso, você pode fornecer uma tela de login ou exibir uma mensagem indicando que o login é necessário.
Se um usuário não tiver permissão para acessar uma tela específica, você pode orientá-lo a solicitar acesso a um administrador.
Nenhum desenvolvedor de produto aceita o abandono do usuário. É fundamental orientar os usuários que encontrarem erros para ajudá-los a superar a situação. Por exemplo, fornecendo um botão de atualização para erros temporários de rede ou um botão para voltar à tela anterior ao acessar uma página inexistente.
No entanto, há casos em que informar o usuário sobre a situação do erro não ajuda em nada. Por exemplo, se o código incluir componentes que não funcionam em dispositivos ou navegadores de baixa especificação, o usuário não poderá fazer nada a respeito. (Talvez uma mensagem sugerindo o uso de um navegador diferente?)
Ambos os casos, 1 e 2, envolvem o fornecimento de uma mensagem. A diferença é que o caso 1 inclui alguma ação ou orientação que solicita ao usuário que tome medidas.
O erro encontrado é algo que o usuário pode resolver sozinho ou não?
Então, como devemos lidar com os erros que ocorrem? Que tipo de interface o aplicativo deve fornecer ao usuário quando ocorre um erro? Vamos explorar como lidar com diferentes tipos de erros com base em suas características.
Um exemplo típico é um erro de rede. Isso pode ocorrer a qualquer momento, dependendo do ambiente de rede do usuário. A solução mais simples é informar ao usuário que se trata de um 'erro temporário' e fornecer orientação para tentar novamente a ação anterior.
Para esses erros, é crucial garantir que o aplicativo como um todo não seja afetado negativamente. Por exemplo, se um aplicativo chama 10 APIs em uma tela, a falha em uma não deve acionar uma mensagem de erro em todo o aplicativo e exigir uma nova tentativa de todas as chamadas.
Em vez disso, concentre-se em recuperar apenas a área que falhou.
São erros difíceis de prever e que não têm resolução direta. Tais erros devem ser minimizados durante o desenvolvimento e deve haver um plano para lidar com eles quando ocorrerem. Como os usuários não podem resolver esses erros sozinhos, pode ser necessário fornecer uma maneira fácil de entrar em contato com o suporte ao cliente.
Erros fora do controle do desenvolvedor devem ser monitorados usando ferramentas como o Sentry. Esses erros precisam ser corrigidos para evitar que os usuários os encontrem. Além disso, certifique-se de que haja um mecanismo para os usuários retornarem ao aplicativo caso encontrem tais erros.
Esses são erros conhecidos para os quais não há resolução disponível para o usuário. Se os usuários não conseguirem resolvê-los sozinhos, isso indica uma oportunidade perdida de tratamento de erros. Se os usuários realizarem ações anormais intencionalmente, isso pode ser um sinal de vulnerabilidade de segurança.
Esses erros ocorrem quando há intenção maliciosa de explorar o aplicativo. Eles normalmente resultam de vulnerabilidades de segurança e devem ser evitados durante o desenvolvimento. É crucial abordar questões básicas de segurança, como CORS e XSS, e colaborar com a equipe de segurança para construir um aplicativo seguro.
Esses erros geralmente fazem parte da lógica de negócios que os desenvolvedores já conhecem:
Nesses casos, forneça orientações adequadas dentro do aplicativo ou crie páginas separadas para direcionar os usuários.
Os usuários devem entender claramente o que fazer a seguir após encontrar uma mensagem de erro. Isso ajuda a reduzir a frequência de erros e evita o abandono do usuário. Portanto, junto com a mensagem de erro, é fundamental incluir um call to action.
Por exemplo, se houver um erro de validação de campo, concentre-se no campo onde o erro ocorreu. Se o usuário navegou para uma página inexistente, forneça um botão para voltar à tela anterior.
Exploramos o tratamento de erros. Vamos gerenciar erros com eficiência utilizando várias ferramentas e tecnologias, como ferramentas de monitoramento de erros e ErrorBoundary do React, que podem detectar erros dentro de um escopo limitado.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3