2
respostas

"Status code" 4xx é erro do cliente, ou de dev do client-side?

Os status code 4xx, são de erros do cliente, dos dev de client-side, ou os dois, por exemplo, 404 é um erro normalmente do cliente mesmo, mas já 405 (Method not Allowed) é um erro visto quando o código da página está errado. Sendo assim, status code seria erros de qual "cliente"?

2 respostas

Boa tarde.

2xx - Erros começados com 2 normalmente significam coisa boa, ou seja, a requisição foi executada com sucesso.

3xx - Normalmente significa que o navegador precisa fazer algo a mais (o cliente precisa agir) pois algo mudou ou um recurso não existe mais.

4xx - Significa que o navegador enviou dados errados, como por exemplo uma URL errada.

5xx - Problemas gerados no lado do servidor, fora do alcance do cliente/usuário. Por ex: 500 - Internal Server Error, ou, outro famoso: 503 - Service Unavaiable.

O erro 405 que citou normalmente é chato resolver porque ele pode ser causado por vários fatores, inclusive uma URL digitada errada pelo usuário, tanto como ser um problema originado no lado do servidor, como plugins de wordpress desatualizados por exemplo, ou outros problemas de configuração.

E ai Pedro, beleza?

Primeiro devemos considerar que todos os status code são originados do servidor (web, aplicação), certo? As mensagens nunca são geradas pelo próprio cliente.

Referente ao erro que você mencionou, o 405 (Method Not Allowed), é geralmente enviado do servidor para o client quando, o client solicita informações de um formato que o servidor não está pronto para responder, por exemplo:

Se você fizer uma requisição no client, utilizando o header Accept como application/xml e o servidor estiver preparado apenas para responder a requisição como application/json, logo, obterá o código de erro 405 (Method Not Allowed).

É sempre interessante mapear os erros e tratá-los de acordo com o originador do problema, então:

2XX - Mensagens de sucesso no processamento

  • 200 - OK
  • 201 - Created
  • 202 - Accepted
  • 204 - No Content

3XX - Mensagens de ação que o client precisa tomar

  • 300 - Multiple Choices
  • 301 - Moved Permanently
  • 302 - Found
  • 303 - See Other

4XX - Mensagens de falhas originadas pelo Client

  • 400 - Bad Request
  • 401 - Unauthorized
  • 403 - Forbidden
  • 404 - Not Found

5XX - Mensagens de falhas originadas pelo Server

  • 500 - Internal Server Error
  • 501 - Not Implemented
  • 502 - Bad Gateway
  • 503 - Service Unavailable