Status Codes Corretos
O uso correto dos códigos de status HTTP (Status Codes) é fundamental para uma comunicação clara e segura entre o Frontend e o Backend. Eles permitem que o navegador e a aplicação tomem decisões automáticas baseadas no tipo de resposta.
Categorias Principais
- 2xx (Sucesso): A requisição foi processada com êxito.
- 3xx (Redirecionamento): O recurso mudou de lugar.
- 4xx (Erro do Cliente): O Frontend enviou algo errado ou não tem permissão.
- 5xx (Erro do Servidor): O servidor falhou ao processar uma requisição válida.
Como fazer vs Como não fazer
✅ Como fazer
- 200 OK: Requisição bem-sucedida com corpo de resposta.
- 201 Created: Recurso criado com sucesso (usar em POST).
- 204 No Content: Sucesso, mas sem corpo de resposta (usar em DELETE ou PUT).
- 400 Bad Request: Erro de validação de dados no Frontend.
- 401 Unauthorized: O usuário não está autenticado (precisa de login).
- 403 Forbidden: O usuário está autenticado, mas não tem permissão para este recurso específico.
- 404 Not Found: O recurso solicitado não existe.
- 429 Too Many Requests: Limite de requisições (Rate Limit) atingido.
- 500 Internal Server Error: Erro genérico de servidor (evite usar para erros de negócio).
❌ Como não fazer
- Não retorne 200 OK para erros. Se a requisição falhou, o código deve ser 4xx ou 5xx. Retornar 200 com
{ error: true }é um anti-padrão que quebra caches e ferramentas de monitoramento. - Não confunda 401 com 403. 401 é falta de identidade, 403 é falta de autoridade.
- Não exponha códigos 5xx detalhados para o usuário; trate-os como falhas críticas internas.