Sobes.tech
Junior

Fale sobre os códigos de status HTTP.

sobes.tech IA

Resposta da IA

Os códigos de estado HTTP são números de três dígitos devolvidos pelo servidor em resposta a uma solicitação do cliente, indicando o resultado do processamento da solicitação. São classificados pelo primeiro dígito:

  • 1xx (Informativo): A solicitação foi aceita, o processamento continua.
  • 2xx (Sucesso): A solicitação foi recebida, compreendida e aceita com sucesso.
  • 3xx (Redirecionamento): São necessárias ações adicionais para completar a solicitação.
  • 4xx (Erro do cliente): A solicitação contém um erro de sintaxe ou não pode ser processada.
  • 5xx (Erro do servidor): O servidor não conseguiu processar corretamente a solicitação bem formada.

Exemplos dos códigos mais comuns:

Código Categoria Valor Descrição
100 Informativo Continue O servidor recebeu a primeira parte da solicitação
200 Sucesso OK A solicitação foi bem-sucedida
201 Sucesso Created A solicitação foi processada e um novo recurso foi criado
204 Sucesso No Content A solicitação foi processada e a resposta não contém corpo
301 Redirecionamento Moved Permanently O recurso foi movido permanentemente
302 Redirecionamento Found (Temporarily Moved) O recurso foi movido temporariamente
304 Redirecionamento Not Modified O recurso não foi alterado desde a última solicitação
400 Erro do cliente Bad Request A sintaxe da solicitação está incorreta
401 Erro do cliente Unauthorized É necessária autenticação
403 Erro do cliente Forbidden O acesso ao recurso é proibido
404 Erro do cliente Not Found O recurso na URL especificada não foi encontrado
405 Erro do cliente Method Not Allowed Foi utilizado um método HTTP não permitido
500 Erro do servidor Internal Server Error Erro interno do servidor
502 Erro do servidor Bad Gateway Resposta inválida do servidor ascendente
503 Erro do servidor Service Unavailable O servidor está temporariamente indisponível

Conhecer os códigos de estado ajuda a entender a causa do erro, depurar solicitações e determinar o sucesso de sua execução. Na automação de testes, eles são frequentemente usados para verificar o resultado esperado das solicitações API.

import requests

url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)

# Verificação do código de estado para sucesso (200 OK)
if response.status_code == 200:
    print("Requisição GET bem-sucedida")
else:
    print(f"Erro na requisição GET: código de estado {response.status_code}")

url_not_found = "https://jsonplaceholder.typicode.com/nonexistent"
response_not_found = requests.get(url_not_found)

# Verificação do código de estado para recurso não encontrado (404 Not Found)
if response_not_found.status_code == 404:
    print("Recurso não encontrado (comportamento esperado)")
else:
    print(f"Código de estado inesperado recebido: {response_not_found.status_code}")