Skip to content

Instantly share code, notes, and snippets.

@LucasAlfare
Created September 14, 2024 18:00
Show Gist options
  • Save LucasAlfare/6e54e6391ec8fd7c896082b384acbbb4 to your computer and use it in GitHub Desktop.
Save LucasAlfare/6e54e6391ec8fd7c896082b384acbbb4 to your computer and use it in GitHub Desktop.
Resumo básico dos códigos HTTP e suas respectivas indicações de uso

Resumo códigos HTTP

O resumo mostra o número do código, com seu título e uma breve indicação de uso do mesmo. Confira a lista a seguir:

  • 100 Continue: Solicitação está OK, pode continuar enviando.
    Use ao dividir uma solicitação grande em partes.

  • 101 Switching Protocols: Servidor aceitou mudar o protocolo.
    Use ao alterar de HTTP para WebSockets, por exemplo.

  • 102 Processing: Solicitação em processamento.
    Use em operações longas para informar que ainda está processando.

  • 103 Early Hints: Enviar cabeçalhos antes da resposta completa.
    Use para otimizar carregamento, como pré-carregar recursos.

  • 200 OK: Sucesso.
    Use em quase toda resposta de sucesso padrão.

  • 201 Created: Recurso criado com sucesso.
    Use ao criar novos recursos (ex: API POST para criar um item).

  • 202 Accepted: Solicitação aceita, mas não processada ainda.
    Use em operações assíncronas que podem demorar.

  • 203 Non-Authoritative Information: Informações alteradas da origem.
    Use quando a resposta for modificada (ex: por proxy ou cache).

  • 204 No Content: Sucesso, mas sem conteúdo no corpo.
    Use ao processar uma requisição que não precisa de resposta (ex: DELETE).

  • 205 Reset Content: Redefina o formulário ou estado do cliente.
    Use para instruir o cliente a limpar a tela ou reiniciar.

  • 206 Partial Content: Enviar parte do conteúdo.
    Use ao servir arquivos grandes por partes (ex: downloads).

  • 207 Multi-Status: Vários status para uma operação (ex: WebDAV).
    Use quando houver múltiplos resultados para a mesma solicitação.

  • 208 Already Reported: Status já informado antes.
    Use em respostas de listagens com links recorrentes.

  • 226 IM Used: Resposta com transformações aplicadas ao conteúdo.
    Use ao aplicar otimizações ou modificações à resposta (ex: compressão).

  • 300 Multiple Choices: Várias opções para o recurso solicitado.
    Use para oferecer alternativas (ex: múltiplos formatos de documento).

  • 301 Moved Permanently: Recurso movido permanentemente.
    Use em URLs antigas que foram permanentemente alteradas.

  • 302 Found: Recurso movido temporariamente.
    Use para redirecionar temporariamente para outra URL.

  • 303 See Other: Recurso em outra URL; use GET.
    Use após um POST para redirecionar para uma página de resultado.

  • 304 Not Modified: Recurso não modificado.
    Use com cache para evitar o envio de dados redundantes.

  • 305 Use Proxy: Necessário acessar via proxy.
    Use para forçar o uso de um proxy específico.

  • 306 Switch Proxy: Não utilizado mais.

  • 307 Temporary Redirect: Redirecionamento temporário com método preservado.
    Use para redirecionamentos temporários sem mudar o método (ex: POST -> POST).

  • 308 Permanent Redirect: Redirecionamento permanente com método preservado.
    Use para redirecionamento permanente que mantém o método.

  • 400 Bad Request: Solicitação malformada.
    Use quando o cliente enviar dados incorretos ou inválidos.

  • 401 Unauthorized: Falta autenticação.
    Use quando a solicitação requer login/autenticação.

  • 402 Payment Required: Pagamento necessário (não usado com frequência).
    Planejado para sistemas de pagamento, raramente implementado.

  • 403 Forbidden: Acesso proibido.
    Use quando o cliente não tem permissão para acessar o recurso.

  • 404 Not Found: Recurso não encontrado.
    Use quando o recurso requisitado não existir.

  • 405 Method Not Allowed: Método HTTP não permitido.
    Use quando o método (GET, POST, etc.) não for suportado pelo recurso.

  • 406 Not Acceptable: Recurso não disponível no formato solicitado.
    Use quando o cliente requisitar um formato não suportado.

  • 407 Proxy Authentication Required: Autenticação no proxy necessária.
    Use quando a solicitação requer autenticação via proxy.

  • 408 Request Timeout: Solicitação expirou.
    Use quando o cliente demora muito para enviar a solicitação.

  • 409 Conflict: Conflito na solicitação.
    Use quando há conflito de recursos, como versão de dados (ex: edições simultâneas).

  • 410 Gone: Recurso permanentemente indisponível.
    Use para indicar que o recurso foi removido e não voltará.

  • 411 Length Required: Tamanho do conteúdo não especificado.
    Use quando for obrigatório definir o tamanho do corpo da solicitação.

  • 412 Precondition Failed: Pré-condição falhou.
    Use quando uma condição necessária não for atendida (ex: If-Match falhou).

  • 413 Payload Too Large: Corpo da solicitação muito grande.
    Use quando o cliente envia dados maiores do que o servidor pode processar.

  • 414 URI Too Long: URL muito longa.
    Use quando o cliente envia uma URL muito extensa.

  • 415 Unsupported Media Type: Tipo de mídia não suportado.
    Use quando o formato de dados enviado não é aceito (ex: MIME errado).

  • 416 Range Not Satisfiable: Faixa solicitada inválida.
    Use ao processar solicitações de partes de arquivos e a faixa é inválida.

  • 417 Expectation Failed: Expectativa não atendida.
    Use quando uma expectativa do cabeçalho Expect não puder ser atendida.

  • 418 I'm a teapot: Sou um bule de chá (piada de RFC).
    Não use, é uma piada do protocolo HTTP.

  • 421 Misdirected Request: Solicitação para servidor errado.
    Use quando o servidor não pode lidar com a solicitação.

  • 422 Unprocessable Entity: Entidade sem validação.
    Use quando os dados estão corretos em formato, mas sem sentido lógico.

  • 423 Locked: Recurso bloqueado.
    Use quando o recurso está bloqueado por outra operação.

  • 424 Failed Dependency: Falha em dependência anterior.
    Use quando uma solicitação falha por depender de outra operação que falhou.

  • 425 Too Early: Solicitação feita muito cedo.
    Use em situações onde a requisição precisa esperar uma condição ser atendida.

  • 426 Upgrade Required: Atualização necessária.
    Use para indicar que o cliente precisa usar um protocolo diferente.

  • 428 Precondition Required: Pré-condição necessária.
    Use quando o cliente precisa enviar uma pré-condição para prosseguir (ex: If-Match).

  • 429 Too Many Requests: Muitas solicitações.
    Use para limitar o número de requisições em um determinado período de tempo (rate limiting).

  • 431 Request Header Fields Too Large: Cabeçalhos muito grandes.
    Use quando o tamanho dos cabeçalhos enviados pelo cliente é muito grande.

  • 451 Unavailable For Legal Reasons: Indisponível por razões legais.
    Use para bloquear recursos por questões legais (ex: censura, direitos autorais).

  • 500 Internal Server Error: Erro no servidor.
    Use para erros genéricos e inesperados no servidor.

  • 501 Not Implemented: Função não implementada.
    Use quando o método HTTP requisitado não é suportado pelo servidor.

  • 502 Bad Gateway: Gateway inválido.
    Use quando um servidor, agindo como proxy, recebe uma resposta inválida do servidor de origem.

  • 503 Service Unavailable: Serviço indisponível.
    Use quando o servidor está sobrecarregado ou em manutenção.

  • 504 Gateway Timeout: Tempo de resposta do gateway esgotado.
    Use quando um servidor, agindo como proxy, não recebe uma resposta em tempo hábil.

  • 505 HTTP Version Not Supported: Versão HTTP não suportada.
    Use quando o servidor não suporta a versão do HTTP usada pelo cliente.

  • 506 Variant Also Negotiates: Variante de conteúdo causa conflito.
    Use para indicar que a negociação de conteúdo falhou.

  • 507 Insufficient Storage: Armazenamento insuficiente.
    Use quando o servidor não tem espaço suficiente para completar a solicitação.

  • 508 Loop Detected: Loop infinito detectado.
    Use quando um loop de redirecionamento ou dependência é detectado.

  • 510 Not Extended: Extensões necessárias para completar a solicitação.
    Use quando são necessárias mais extensões para o servidor processar a solicitação.

  • 511 Network Authentication Required: Autenticação de rede necessária.
    Use quando o cliente precisa autenticar-se na rede para obter acesso.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment