Python - Códigos de status de solicitação
Depois de receber e interpretar uma mensagem de solicitação, um servidor responde com uma mensagem de resposta HTTP. A mensagem de resposta possui um código de status. É um número inteiro de 3 dígitos onde o primeiro dígito do código de status define a classe de resposta e os dois últimos dígitos não têm qualquer função de categorização. Existem 5 valores para o primeiro dígito:
Códigos de status
SN | Código e Descrição |
---|---|
1 | 1xx: Informational Isso significa que a solicitação foi recebida e o processo continua. |
2 | 2xx: Success Isso significa que a ação foi recebida, compreendida e aceita com sucesso. |
3 | 3xx: Redirection Isso significa que outras ações devem ser tomadas para concluir a solicitação. |
4 | 4xx: Client Error Isso significa que a solicitação contém sintaxe incorreta ou não pode ser atendida. |
5 | 5xx: Server Error Isso significa que o servidor falhou em atender a uma solicitação aparentemente válida. |
Resposta Bem Sucedida
No exemplo abaixo, acessamos um arquivo de uma url e a resposta é bem-sucedida. Portanto, o código de status retornado é 200.
import urllib3
http = urllib3.PoolManager()
resp = http.request('GET', 'http://tutorialspoint.com/robots.txt')
print resp.data
# get the status of the response
print resp.status
Quando executamos o programa acima, obtemos a seguinte saída -
User-agent: *
Disallow: /tmp
Disallow: /logs
Disallow: /rate/*
Disallow: /cgi-bin/*
Disallow: /videotutorials/video_course_view.php?*
Disallow: /videotutorials/course_view.php?*
Disallow: /videos/*
Disallow: /*/*_question_bank/*
Disallow: //*/*/*/*/src/*
200
Resposta sem sucesso
No exemplo abaixo, acessamos um arquivo de uma url que não existe. A resposta não teve sucesso. Portanto, o código de status retornado é 403.
import urllib3
http = urllib3.PoolManager()
resp = http.request('GET', 'http://tutorialspoint.com/robot.txt')
print resp.data
# get the status of the response
print resp.status
Quando executamos o programa acima, obtemos a seguinte saída -
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /robot.txt
on this server.</p>
</body></html>
403