Client error (“Erro do Cliente” ou “Erro no Cliente”):
No protocolo HTTP, um “Erro do Cliente” ocorre quando o cliente (navegador web, aplicativo, etc.) envia uma solicitação malformada ou incompleta ao servidor. Este tipo de erro é identificado por códigos de status HTTP na faixa de 400 a 499. Assim, um “Erro do Cliente” no contexto do HTTP se refere a um código de status que indica que o cliente (navegador web ou aplicativo) fez uma solicitação inválida ao servidor. O código de status é um número de três dígitos que começa com “4”. “Client error” (erro do cliente) é um tipo de erro que ocorre quando o cliente (geralmente um navegador da web) faz uma solicitação a um servidor, mas essa solicitação não pode ser atendida corretamente. Esses erros são identificados por códigos de status HTTP que começam com o número 4 (por exemplo, 404 Not Found ou 403 Forbidden). Trata-se de um problema reportado pelo módulo cliente HTTP (Hypertext Transfer Protocol) como o resultado da dificuldade de interpretar um comando ou a inabilidade de estabelecer uma conexão adequada com um host remoto. No protocolo HTTP, um “Erro do Cliente” se refere a um código de status que indica que a solicitação do cliente foi malformada ou não pode ser concluída pelo servidor. Esses erros são categorizados na faixa de códigos 400 a 499.
Códigos de status de Erro do Cliente:
Esses são os principais códigos de status de erro do cliente na faixa de 400 a 499, cada um com sua própria descrição e exemplos de uso.
Como solucionar Erros do Cliente:
A solução para um Erro do Cliente depende do código de status específico. Em geral, o cliente precisa corrigir a solicitação e enviá-la novamente ao servidor. As mensagens de erro do servidor podem fornecer dicas sobre como corrigir a solicitação.
Quando um erro do cliente ocorre, o servidor envia uma resposta de erro ao cliente. A resposta de erro inclui o código de status e uma mensagem de erro que explica o problema. O navegador web ou aplicativo do cliente pode então exibir a mensagem de erro para o usuário.
Algumas dicas gerais para corrigir erros do cliente incluem:
- Verifique se a URL está correta.
- Verifique se o método HTTP correto está sendo usado.
- Verifique se o tipo de mídia correto está sendo enviado.
- Verifique se o tamanho da solicitação está dentro do limite permitido.
- Verifique se o cliente está autorizado a acessar o recurso solicitado.
- Verifique se o servidor está configurado corretamente.
Se você estiver com problemas para corrigir um erro do cliente, pode consultar a documentação do servidor web ou aplicativo que está usando. Você também pode tentar pesquisar o código de status específico para obter mais informações sobre o problema e como corrigi-lo.
Aqui está a lista detalhada dos códigos de status de erro do cliente na faixa de 400 a 499, incluindo suas subcategorias específicas:
400 Bad Request
- Descrição: Indica que o servidor não pôde entender a solicitação do cliente devido a uma sintaxe incorreta, solicitação inválida ou parâmetros ausentes.
- Exemplo: Se a solicitação HTTP não estiver formatada corretamente ou contiver campos obrigatórios ausentes.
401 Unauthorized
- Descrição: O cliente deve se autenticar para obter a resposta solicitada. Isso geralmente significa que as credenciais de autenticação fornecidas pelo cliente são inválidas ou ausentes.
- Exemplo: Se um usuário tentar acessar uma página protegida sem fornecer credenciais de autenticação válidas.
402 Payment Required
- Descrição: Este status de código de resposta ainda não é usado, mas reservado para uso futuro.
403 Forbidden
- Descrição: O servidor entendeu a solicitação do cliente, mas está se recusando a atendê-la devido a permissões insuficientes do cliente para acessar o recurso solicitado.
- Exemplo: Quando um cliente tenta acessar um recurso protegido para o qual não tem permissão.
404 Not Found
- Descrição: Indica que o servidor não encontrou o recurso solicitado. Isso pode ocorrer se o URL estiver incorreto ou se o recurso foi removido ou não existe mais.
- Exemplo: Se um cliente solicitar uma página da web que não existe mais ou cujo URL esteja incorreto.
405 Method Not Allowed
- Descrição: Indica que o método de solicitação (GET, POST, PUT, DELETE, etc.) é conhecido pelo servidor, mas não é permitido para o recurso solicitado.
- Exemplo: Se um cliente tentar usar um método HTTP não suportado para acessar um recurso, como fazer uma solicitação POST para um endpoint que só aceita solicitações GET.
406 Not Acceptable
- Descrição: O servidor não pode gerar uma resposta que atenda aos critérios especificados pelos cabeçalhos Accept do cliente.
- Exemplo: Quando um cliente solicita um tipo de mídia que o servidor não pode fornecer, com base nas preferências de mídia fornecidas pelos cabeçalhos Accept.
407 Proxy Authentication Required
- Descrição: Semelhante ao status 401, mas indica que o cliente deve primeiro autenticar-se com o proxy antes de poder acessar o recurso solicitado.
- Exemplo: Quando um cliente tenta acessar um recurso por meio de um proxy e precisa fornecer credenciais de autenticação para o proxy.
408 Request Timeout
- Descrição: Indica que o servidor encerrou prematuramente a conexão devido a uma solicitação do cliente que levou muito tempo para ser concluída.
- Exemplo: Se um cliente enviar uma solicitação HTTP e não receber uma resposta dentro do tempo limite especificado.
409 Conflict
- Descrição: Indica que a solicitação do cliente não pode ser concluída devido a um conflito com o estado atual do recurso no servidor.
- Exemplo: Quando ocorre um conflito durante uma solicitação de atualização de recurso, como tentar criar um recurso que já existe.
410 Gone
- Descrição: Indica que o recurso solicitado não está mais disponível no servidor e não há um redirecionamento conhecido.
- Exemplo: Quando um recurso foi intencionalmente removido ou movido para um novo local e não há redirecionamento disponível.
411 Length Required
- Descrição: O servidor rejeita a solicitação do cliente porque o campo de cabeçalho Content-Length é necessário e não foi fornecido.
- Exemplo: Quando um cliente faz uma solicitação POST ou PUT sem fornecer o tamanho do conteúdo no cabeçalho Content-Length.
412 Precondition Failed
- Descrição: O servidor não atende a uma das precondições que o solicitante colocou no cabeçalho da solicitação.
- Exemplo: Quando um cliente faz uma solicitação condicional e a condição especificada no cabeçalho não é atendida.
413 Payload Too Large
- Descrição: A solicitação do cliente é maior do que o servidor está disposto ou capaz de processar.
- Exemplo: Quando um cliente faz uma solicitação com um corpo de mensagem muito grande.
414 URI Too Long
- Descrição: A URI fornecida pelo cliente é muito longa para o servidor processar.
- Exemplo: Quando um cliente faz uma solicitação GET com uma URL extremamente longa.
415 Unsupported Media Type
- Descrição: O formato de mídia dos dados da solicitação ou da resposta não é suportado pelo servidor.
- Exemplo: Quando um cliente faz uma solicitação POST ou PUT com um tipo de mídia que o servidor não suporta.
416 Range Not Satisfiable
- Descrição: O cliente solicitou uma parte de um arquivo, mas o servidor não pode fornecer essa parte.
- Exemplo: Quando um cliente faz uma solicitação de intervalo para um arquivo e o intervalo especificado não pode ser atendido.
417 Expectation Failed
- Descrição: O servidor não pode atender aos requisitos do campo de cabeçalho Expect da solicitação.
- Exemplo: Quando um cliente faz uma solicitação com um cabeçalho Expect que o servidor não pode atender.
418 I’m a teapot
- Descrição: Este código foi definido em 1998 como uma das piadas tradicionais do Dia da Mentira (1º de abril) da IETF. Não é esperado que qualquer servidor HTTP implemente realmente este código de erro.
- Exemplo: Este código de status é usado como uma piada e não tem nenhum uso prático em aplicações web.
421 Misdirected Request
- Descrição: A solicitação foi direcionada para um servidor que não é capaz de produzir uma resposta.
- Exemplo: Isso pode ser enviado por um servidor que não está configurado para produzir respostas para a combinação de esquema e autoridade inclusos na URI de solicitação.
422 Unprocessable Entity
- Descrição: A solicitação estava bem formada, mas não pode ser seguida devido a erros semânticos.
- Exemplo: Quando um cliente faz uma solicitação POST ou PUT que o servidor entende, mas não pode processar devido a algum problema com os dados da solicitação.
423 Locked
- Descrição: O recurso que está sendo acessado está bloqueado.
- Exemplo: Quando um cliente tenta modificar um recurso que está atualmente bloqueado.
424 Failed Dependency
- Descrição: A solicitação falhou devido ao fracasso de uma solicitação anterior.
- Exemplo: Quando uma solicitação em uma operação de várias partes falha, fazendo com que a operação inteira falhe.
425 Too Early
- Descrição: Indica que o servidor não está disposto a arriscar processar uma solicitação que pode ser repetida.
- Exemplo: Quando um cliente faz uma solicitação que pode ser repetida prematuramente.
426 Upgrade Required
- Descrição: O cliente deve mudar para um protocolo diferente.
- Exemplo: Quando um cliente faz uma solicitação HTTP/1.1 a um servidor que requer HTTP/2.
428 Precondition Required
- Descrição: O servidor requer que a solicitação do cliente seja condicional.
- Exemplo: Quando um cliente faz uma solicitação PUT sem fornecer um cabeçalho If-Match.
429 Too Many Requests
- Descrição: O usuário enviou muitas solicitações em um determinado período de tempo.
- Exemplo: Quando um cliente excede um limite de taxa de solicitação.
431 Request Header Fields Too Large
- Descrição: O servidor não está disposto a processar a solicitação porque um ou mais campos de cabeçalho são muito grandes.
- Exemplo: Quando um cliente faz uma solicitação com campos de cabeçalho muito grandes.
451 Unavailable For Legal Reasons
- Descrição: O servidor não pode fornecer o recurso solicitado devido a restrições legais.
- Exemplo: Quando um cliente tenta acessar um recurso que foi removido devido a questões legais.
Esses são apenas alguns dos códigos de status de erro do cliente HTTP. Cada um tem suas próprias implicações e soluções potenciais. É importante entender o que cada código de status significa para poder lidar adequadamente com os erros do cliente. A melhor maneira de evitar erros do cliente é garantir que as solicitações sejam bem formadas e válidas antes de enviá-las ao servidor. Isso inclui verificar a URL, o método HTTP, o tipo de mídia, o tamanho da solicitação e as permissões do cliente. Além disso, é útil entender como o servidor está configurado e como ele lida com diferentes tipos de solicitações. Se você encontrar um erro do cliente que não consegue resolver, pode ser útil consultar a documentação do servidor ou buscar ajuda online. Lembre-se, a chave para resolver erros do cliente é entender o problema e tomar as medidas adequadas para corrigi-lo.