http
— módulos HTTP¶
Código-fonte: Lib/http/__init__.py
http
é um pacote que coleta vários módulos para trabalhar com o Protocolo de Transferência de Hipertexto:
http.client
é um cliente de protocolo HTTP de baixo nível; para abertura de URL de alto nível, useurllib.request
http.server
contém classes básicas de servidor HTTP baseadas emsocketserver
http.cookies
tem utilidades para implementar gerenciamento de estado com cookieshttp.cookiejar
provê persistência de cookies
O módulo http
também define os seguintes enums que podem ajudar você a trabalhar com os status code http relacionados:
- class http.HTTPStatus¶
Novo na versão 3.5.
Subclasse de
enum.IntEnum
que define um conjunto de códigos de status HTTP, frases de razão e descrições longas escritas em inglês.Uso:
>>> from http import HTTPStatus >>> HTTPStatus.OK HTTPStatus.OK >>> HTTPStatus.OK == 200 True >>> HTTPStatus.OK.value 200 >>> HTTPStatus.OK.phrase 'OK' >>> HTTPStatus.OK.description 'Request fulfilled, document follows' >>> list(HTTPStatus) [HTTPStatus.CONTINUE, HTTPStatus.SWITCHING_PROTOCOLS, ...]
códigos de status HTTP¶
Supported,
IANA-registered status codes
available in http.HTTPStatus
are:
Código |
Nome da Enumeração |
Detalhes |
---|---|---|
|
|
HTTP/1.1 RFC 7231, Seção 6.2.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.2.2 |
|
|
WebDAV RFC 2518, Seção 10.1 |
|
|
Um código de status HTTP para indicar dicas RFC 8297 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.3 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.4 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.5 |
|
|
HTTP/1.1 RFC 7231, Seção 6.3.6 |
|
|
HTTP/1.1 RFC 7233, Seção 4.1 |
|
|
WebDAV RFC 4918, Seção 11.1 |
|
|
Extensões Vinculadas WebDAV RFC 5842, Seção 7.1 (Experimental) |
|
|
Codificador Delta em HTTP RFC 3229, Seção 10.4.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.3 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.4 |
|
|
HTTP/1.1 RFC 7232, Seção 4.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.5 |
|
|
HTTP/1.1 RFC 7231, Seção 6.4.7 |
|
|
Redirecionamento Permanente RFC 7238, Seção 3 (Experimental) |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.1 |
|
|
Autenticação HTTP/1.1 RFC 7235, Seção 3.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.3 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.4 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.5 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.6 |
|
|
Autenticação HTTP/1.1 RFC 7235, Seção 3.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.7 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.8 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.9 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.10 |
|
|
HTTP/1.1 RFC 7232, Seção 4.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.11 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.12 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.13 |
|
|
Alcance de Requisições HTTP/1.1 RFC 7233, Seção 4.4 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.14 |
|
|
HTCPCP/1.0 RFC 2324, Seção 2.3.2 |
|
|
HTTP/2 RFC 7540, Seção 9.1.2 |
|
|
WebDAV RFC 4918, Section 11.2 |
|
|
WebDAV RFC 4918, Seção 11.3 |
|
|
WebDAV RFC 4918, Seção 11.4 |
|
|
Usando dados antecipados em HTTP RFC 8470 |
|
|
HTTP/1.1 RFC 7231, Seção 6.5.15 |
|
|
Códigos de Status HTTP Adicionais RFC 6585 |
|
|
Códigos de Status HTTP Adicionais RFC 6585 |
|
|
Códigos de Status HTTP Adicionais RFC 6585 |
|
|
Um Código de Status HTTP para Relatar Obstáculos Legais RFC 7725 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.1 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.2 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.3 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.4 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.5 |
|
|
HTTP/1.1 RFC 7231, Seção 6.6.6 |
|
|
Negociação Transparente de Conteúdo em HTTP RFC 2295, Seção 8.1 (Experimental) |
|
|
WebDAV RFC 4918, Seção 11.5 |
|
|
Extensões de Ligação WebDAV RFC 5842, Seção 7.2 (Experimental) |
|
|
Um Framework de Extensão HTTP RFC 2774, Seção 7 (Experimental) |
|
|
Códigos de Status HTTP Adicionais RFC 6585, Seção 6 |
Para preservar compatibilidade anterior, valores de enumerações também estão presentes no módulo http.client
na forma de constantes. O nome da enumeração é igual ao nome da constante (i.e. http.HTTPStatus.OK
também está disponível como http.client.OK
).
Alterado na versão 3.7: Código de status 421 MISDIRECTED_REQUEST
adicionado.
Novo na versão 3.8: Código de status 451 UNAVAILABLE_FOR_LEGAL_REASONS
adicionado.
Novo na versão 3.9: Adicionados os códigos de status 103 EARLY_HINTS
, 418 IM_A_TEAPOT
e 425 TOO_EARLY
.
- class http.HTTPMethod¶
Novo na versão 3.11.
A subclass of
enum.StrEnum
that defines a set of HTTP methods and descriptions written in English.Uso:
>>> from http import HTTPMethod >>> >>> HTTPMethod.GET <HTTPMethod.GET> >>> HTTPMethod.GET == 'GET' True >>> HTTPMethod.GET.value 'GET' >>> HTTPMethod.GET.description 'Retrieve the target.' >>> list(HTTPMethod) [<HTTPMethod.CONNECT>, <HTTPMethod.DELETE>, <HTTPMethod.GET>, <HTTPMethod.HEAD>, <HTTPMethod.OPTIONS>, <HTTPMethod.PATCH>, <HTTPMethod.POST>, <HTTPMethod.PUT>, <HTTPMethod.TRACE>]
Métodos HTTP¶
Supported,
IANA-registered methods
available in http.HTTPMethod
are:
Método |
Nome da Enumeração |
Detalhes |
---|---|---|
|
|
HTTP/1.1 RFC 7231, Section 4.3.1 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.2 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.3 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.4 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.5 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.6 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.7 |
|
|
HTTP/1.1 RFC 7231, Section 4.3.8 |
|
|
HTTP/1.1 RFC 5789 |