Quantas vezes tentamos acessar uma
página e não conseguimos, recebemos uma página contendo uma mensagem de erro.
Quem nunca passou por isso?
Muitas pessoas quando acessam uma
página, não tem ideia do que acontece nos bastidores para que esta página possa
ser exibida.
Existe um protocolo
denominado HTTP(HyperText Transfer Protocol) que é o responsável pela
comunicação entre o seu navegador Web e o servidor onde a página está hospedada.
Os servidores onde as páginas estão
hospedadas sempre que requisitados, retornam um código de resposta HTTP para
quem fez uma requisição.
Podemos ressaltar a importância desses códigos para um time de desenvolvimento, pois estes informam o status de uma requisição de uma página ou de algum recurso dela. Estas informações podem ser usadas como Debug por exemplo durante um ciclo de desenvolvimento.
Esses
códigos de status HTTP podem ser classificados em cinco grupos específicos,
sendo que o primeiro dígito de cada grupo especifica a sua classe de resposta:
- Classe 1xx (Informativo)
- Classe 2xx (Sucesso)
- Classe 3xx (Redirecionamento)
- Classe 4xx (Erro gerados pelo lado do cliente)
- Classe 5xx (Erro do Servidor)
Irei mostrar alguns exemplos de cada
classe.
100 - Continue - O cabeçalho do pedido foi recebido pelo servidor corretamente eo cliente
pode continuar a enviar o corpo da solicitação.
101 -
Ligue o Protocolo - O cliente tem solicitações ao servidor para mudar o protocolo e o
servidor está respondendo de forma positiva.
102 -
No processo - Devido a este código, ele indica que o servidor recebeu o pedido do
cliente e processar o pedido, mas a resposta ainda não está
disponível. Devido a este cliente não se expirou e presume-se que o pedido
foi perdido.
201 -
Criado – A solicitação foi bem sucedida e o servidor criou um novo recurso.
202 -
Aceito – O servidor aceitou a solicitação, mas ainda não processou.
305 –
Utilizar Proxy – O solicitante poderá acessar a página solicitada utilizando um proxy.
Quando o servidor retornar essa resposta, também indicará qual proxy o solicitante
deverá usar.
400 -
Solicitação Inválida – O servidor não entendeu a sintaxe da solicitação.
404 -
Não encontrada - A página
solicitada não se encontra agora, mas podem estar disponíveis no futuro.
406 -
Não Aceitável – A página solicitada não pode responder
com as características de conteúdo solicitadas.
505 -
Versão HTTP incompatível – O
servidor não é compatível com a versão do protocolo HTTP usada na solicitação.
O
protocolo HTTP define somente alguns códigos em cada classe descritos na RFC 2616, mas cada servidor pode definir
seus próprios códigos.
Referências:
http://www.testinginterviewquestion.com/2014/06/what-are-different-http-status-codes_5.html
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
http://www.w3schools.com/tags/ref_httpmessages.asp