HttpRequest Classe

Rappresenta una richiesta HTTP.

L'URL può essere fornito senza parametri di query, da aggiungere in un secondo momento usando "format_parameters".

Ereditarietà
builtins.object
HttpRequest

Costruttore

HttpRequest(method: str, url: str, headers: Mapping[str, str] | None = None, files: Any | None = None, data: bytes | str | Dict[str, str | int] | None = None)

Parametri

method
str
Necessario

Metodo HTTP (GET, HEAD e così via)

url
str
Necessario

Almeno uno schema/host/percorso completo

headers
dict[str,str]
valore predefinito: None

Intestazioni HTTP

files
dict[str, tuple[str, IO, str, dict]] oppure dict[str, IO]
valore predefinito: None

Dizionario di (o {'name': file-tuple}) per il caricamento della 'name': file-like-objects codifica multipart. file-tuplepuò essere una tupla a 2 tupla , 3-tupla o una tupla ('filename', fileobj)('filename', fileobj, 'content_type')('filename', fileobj, 'content_type', custom_headers)a 4, dove 'content_type' è una stringa che definisce il tipo di contenuto del file specificato e custom_headers un oggetto simile a ct contenente intestazioni aggiuntive da aggiungere per il file.

data
bytes oppure dict (<xref:for form>)
valore predefinito: None

Corpo da inviare.

Metodi

format_parameters

Formattare i parametri in una stringa di query valida. Si presuppone che tutti i parametri siano già stati citati come stringhe URL valide.

prepare_multipart_body

Preparerà il corpo di questa richiesta in base alle informazioni multipart.

Questa chiamata presuppone che i criteri di on_request siano già stati applicati nel contesto corretto (sync/async)

Non fa nulla se "set_multipart_mixed" non è mai stato chiamato.

serialize

Serializzare questa richiesta usando le specifiche dell'applicazione/http.

set_bytes_body

Impostare byte generici come corpo della richiesta.

Imposta la lunghezza del contenuto.

set_formdata_body

Impostare i dati con codifica modulo come corpo della richiesta.

set_json_body

Impostare un oggetto descrittivo JSON come corpo della richiesta.

set_multipart_mixed

Impostare la parte di una multipart/mista.

Solo gli arg supportati per il momento sono oggetti HttpRequest.

il limite è facoltativo e uno verrà generato se non ne viene fornito uno. Si noti che non viene effettuata alcuna verifica sul limite, questa operazione viene considerata abbastanza avanzata in modo da sapere come rispettare RFC1341 7.2.1 e fornire un limite corretto.

Eventuali kwargs aggiuntivi verranno passati al contesto della pipeline per la configurazione dei criteri per richiesta.

set_streamed_data_body

Impostare un corpo dati flussobile.

set_text_body

Impostare un testo come corpo della richiesta.

set_xml_body

Impostare un albero degli elementi XML come corpo della richiesta.

format_parameters

Formattare i parametri in una stringa di query valida. Si presuppone che tutti i parametri siano già stati citati come stringhe URL valide.

format_parameters(params: Dict[str, str]) -> None

Parametri

params
dict
Necessario

Dizionario dei parametri.

prepare_multipart_body

Preparerà il corpo di questa richiesta in base alle informazioni multipart.

Questa chiamata presuppone che i criteri di on_request siano già stati applicati nel contesto corretto (sync/async)

Non fa nulla se "set_multipart_mixed" non è mai stato chiamato.

prepare_multipart_body(content_index: int = 0) -> int

Parametri

content_index
int
valore predefinito: 0

Indice corrente delle parti all'interno del messaggio batch.

Restituisce

Indice aggiornato dopo l'aggiunta di tutte le parti in questa richiesta.

Tipo restituito

int

serialize

Serializzare questa richiesta usando le specifiche dell'applicazione/http.

serialize() -> bytes

Restituisce

Le richieste serializzate come messaggio HTTP di basso livello in byte.

Tipo restituito

set_bytes_body

Impostare byte generici come corpo della richiesta.

Imposta la lunghezza del contenuto.

set_bytes_body(data: bytes) -> None

Parametri

data
bytes
Necessario

Dati del campo richiesta.

set_formdata_body

Impostare i dati con codifica modulo come corpo della richiesta.

set_formdata_body(data: Dict[str, str] | None = None) -> None

Parametri

data
dict
valore predefinito: None

Dati del campo richiesta.

set_json_body

Impostare un oggetto descrittivo JSON come corpo della richiesta.

set_json_body(data: Any) -> None

Parametri

data
dict
Necessario

Oggetto serializzabile JSON

set_multipart_mixed

Impostare la parte di una multipart/mista.

Solo gli arg supportati per il momento sono oggetti HttpRequest.

il limite è facoltativo e uno verrà generato se non ne viene fornito uno. Si noti che non viene effettuata alcuna verifica sul limite, questa operazione viene considerata abbastanza avanzata in modo da sapere come rispettare RFC1341 7.2.1 e fornire un limite corretto.

Eventuali kwargs aggiuntivi verranno passati al contesto della pipeline per la configurazione dei criteri per richiesta.

set_multipart_mixed(*requests: HttpRequest, policies: List[SansIOHTTPPolicy[HTTPRequestType, HTTPResponseType]] | None = None, boundary: str | None = None, **kwargs: Any) -> None

Parametri

requests
HttpRequest
Necessario

Richieste da aggiungere alla multipart/mista

policies
list[SansIOHTTPPolicy]

SansIOPolicy da applicare in fase di preparazione

boundary
str

Limite facoltativo

set_streamed_data_body

Impostare un corpo dati flussobile.

set_streamed_data_body(data: Any) -> None

Parametri

data
<xref:stream> oppure <xref:generator> oppure <xref:asyncgenerator>
Necessario

Dati del campo richiesta.

set_text_body

Impostare un testo come corpo della richiesta.

set_text_body(data: str) -> None

Parametri

data
str
Necessario

Testo da inviare come corpo.

set_xml_body

Impostare un albero degli elementi XML come corpo della richiesta.

set_xml_body(data: Any) -> None

Parametri

data
<xref:<xref:XML node>>
Necessario

Dati del campo richiesta.

Attributi

body

Alias ai dati.

Restituisce

Corpo della richiesta.

Tipo restituito

str,
dict,

query

Parametri di query della richiesta come dict.

Restituisce

Parametri di query della richiesta come dict.

Tipo restituito