Os códigos de erro (ou de
estado) da Web
Conforme
o padrão estabelecido pelo consórcio normatizador da Web,
o W3 Consortium, estabelecido na Suíça,
são estes os principais códigos de estado encontrados durante
a navegação pela rede mundial de computadores, em ambiente
Web:
Success
2** - Códigos desse tipo normalmente não são
vistos pelos internautas, pois indicam que a página solicitada foi
obtida sem problemas. Entretanto, são encontrados em estatísticas
de acesso usadas para controlar o tráfego nos sites.
OK 200
- O atendimento à requisição foi completado
Created
201 - Após um comando POST, este código indica
sucesso, mas a parte textual da linha de resposta indica o URI em
que o documento recém-criado pode ser visto.
URI é sigla de uniform
resource identifier, significando a identificação específica
do recurso + computador hospedeiro + forma de acesso a ele (http, ftp etc.)
na Internet, tendo portanto significado mais amplo que o URL (uniform
- ou universal - resource locator). URL é um subconjunto
do URI.
Accepted
202 - A solicitação está sendo processada,
mas o processamento não foi ainda completado.
Partial
Information 203 - Quando recebido em resposta a um comando GET,
indica que a meta-informação retornada não é
um conjunto completo, mas apenas uma parte da informação
desejada, como um comentário sobre o objeto requisitado, por exemplo.
No Response
204 - O servidor recebeu a solicitação mas não
tem informação a oferecer como resposta, e o cliente permanece
no mesmo documento visto. Isso ocorre principalmente na entrada de dados
para scripts que não alterem o documento ao mesmo tempo.
Error 4**,
5**
- Os códigos 4** aparecem em casos em que aparentemente o erro de
solicitação foi do cliente, e os códigos 5** em situações
em que o erro parece ser do servidor. Como em geral é impossível
distinguir entre as duas situações, a diferença de
código é somente para efeito de informação.
O corpo da seção pode conter um documento descrevendo o erro
de forma compreensível para o usuário. O documento é
em formato MIME, e pode ser apenas em text/plain, text/html ou um dos formatos
especificados como aceitáveis como resposta à solicitação.
Bad request
400 - A solicitação tem um erro de sintaxe ou
é naturalmente impossível de ser satisfeita.
Unauthorized
401 - O parâmetro dessa mensagem dá uma especificação
de esquemas de autorização em que a solicitação
poderá ser aceita. O cliente pode refazer a chamada incluindo um
código aceitável de autorização.
Payment
Required 402 - O parâmetro para esta mensagem dá
uma especificação dos custos e o cliente pode reapresentar
a solicitação indicando um código de pagamento aceitável.
Forbidden
403 - A informação solicitada está vetada
para esse computador-cliente e não há forma de obter autorização
de acesso.
Not found
404 - O servidor não encontrou o endereço solicitado.
Internal
Error 500 - O servidor encontrou uma condição
inesperada decorrente da solicitação, impedindo o atendimento
dessa solicitação.
Not implemented
501 - O servidor não suporta o recurso solicitado.
Service
temporarily overloaded 502 - O servidor não consegue
processar a solicitação do internauta por estar sobrecarregado
com grande quantidade de solicitações simultâneas por
HTTP ou de outra forma. O internauta poderá fazer nova solicitação
em outro momento em que não haja sobrecarga no servidor.
Gateway
timeout 503 - Este código equivale ao Internal Error
500, mas no caso de um servidor que está sendo acessado de outro
serviço, indica que a resposta do outro serviço não
veio no tempo previsto em que deveria chegar. Do ponto de vista do cliente
e da transação, o efeito é o mesmo, já que
a ligação com o outro serviço é oculta, mas
para efeito de diagnóstico de problemas a diferença de código
é importante.
Redirection
3xx - Estes códigos indicam que a solicitação
do cliente está sendo redirecionada para o local em que poderá
ser plenamente atendida, normalmente de forma automática.
Moved 301
- Os dados requisitados foram movidos de forma permanente para novo endereço
na Web. Em certos casos, os navegadores podem reconectar automaticamente
com o novo endereço, se este estiver de fato disponível.
A resposta contem uma ou mais linhas
principais da forma:
URI:
<url> String CrLf
Elas especificam endereços
alternativos para o objeto solicitado. A string é um campo de comentário
opcional. Se a resposta é para indicar um conjunto de variáveis
que correspondem à solicitação, então uma divisão
multipartes/alternativa pode ser usada para separar diferentes conjuntos
Found 302
- Os dados solicitados estão agora em diferente endereço,
mas o redirecionamento pode ser alterado (ao se fazer vínculos com
tais documentos, o navegador deve usar o redirecionamento padrão
do documento, mas tem a opção de vincular com o documento
final, pelo comando "forward" (encaminhar). O formato de resposta é
o mesmo que se obtém em documentos movidos.
Method 303
- Tem o formato:
Method: <method> <url>
body-section
Esse código de estado deveria
ser melhor especificado dentro dos debates sobre as definições
da Web do W3 Consortium. Como na resposta de objeto encontrado, sugere
que o cliente use outro endereço de rede. Nesse caso, um método
diferente pode ser usado, melhor que GET. O corpo da seção
(body-section) contém os parâmetros a serem usados pelo método.
Isto indica ser um documento de referência para uma operação
complexa de solicitação de dados. O corpo do documento pode
ser precedido por campos adicionais.
Not Modified
304 - Se o cliente fez uma solicitação condicional
GET e o acesso é permitido, mas o documento não foi modificado
desde o dia e a hora especificados no campo If-Modified-Since (Se Alterado
desde), o servidor responde com um código de estado 304 e não
envia o corpo do documento para o computador solicitante (o cliente). |