Třída Django HttpRequest:
HttpRequest třída se používá ke zpracování požadavku klienta, který je definován v django.http modul. Atributy této třídy jsou uvedeny níže.
Atributy HttpRequest:
Název atributu | Účel |
---|---|
HttpRequest.cesta | Tento atribut vrátí úplnou cestu požadované stránky. Schéma nebo doména nejsou zahrnuty ve vrácené hodnotě. |
HttpRequest.cesta_info | Tento atribut zobrazuje část informace o cestě této cesty. |
HttpRequest.metoda | Metoda HTTP použitá pro požadavek je zobrazena tímto atributem. |
HttpRequest.systém | Schéma požadavku (HTTP nebo HTTPs) je představováno tímto atributem. |
HttpRequest.tělo | Nezpracované tělo požadavku HTTP je tímto atributem vráceno jako bajtový řetězec. |
HttpRequest.DOSTAT | Tento atribut vrací všechny parametry HTTP GET jako objekt slovníku. |
HttpRequest.POŠTA | Všechny parametry HTTP POST jsou tímto atributem vráceny jako objekt slovníku. |
HttpRequest.COOKIES | Tento atribut vrací všechny dostupné soubory cookie. |
HttpRequest.SOUBORY | Tento atribut obsahuje všechny nahrané soubory. |
HttpRequest.META | Tento atribut zobrazuje všechny dostupné hlavičky HTTP. |
HttpRequest.typ obsahu | Tento atribut zobrazuje typ MIME požadavku, který je analyzován ze záhlaví CONTENT_TYPE. |
HttpRequest.content_params | Tento atribut vrátí objekt slovníku, který je zahrnut v záhlaví CONTENT_TYPE. |
HttpRequest.kódování | Tento atribut zobrazuje použité aktuální kódování k dekódování odeslaných dat formuláře. |
Metody HttpRequest:
Metoda | Účel |
---|---|
HttpRequest.get_host () | Používá se k vrácení skutečného názvu hostitele požadavku. |
HttpRequest.get_full_path () | Používá se k vrácení cesty a řetězce dotazu, pokud jsou k dispozici. |
HttpRequest.get_port () | Používá se k vrácení čísla portu požadavku. |
HttpRequest.is_secure () | Pokud je požadavek vytvořen pomocí HTTPS, vrátí se jako True, jinak False. |
HttpRequest.is_ajax () | Pokud je požadavek vytvořen pomocí XMLHttpRequest, vrátí se jako True, jinak False. |
HttpRequest.build_absolute_uri (umístění) | Používá se k vrácení absolutního umístění URI. |
HttpRequest.get_signed_cookie (klíč, výchozí = RAISE_ERROR, salt = ”, max_age = žádný) | Používá se k vrácení hodnoty cookie pro podepsaný soubor cookie nebo vyvolání django.jádro.podepisování.Výjimka BadSignature pro neplatný podpis. |
Django HttpResponse:
HttpResponse třída se používá ke zpracování reakce klienta, která je definována v django.http modul. Atributy této třídy jsou uvedeny níže.
Atributy HttpResponse:
Název atributu | Účel |
---|---|
HttpResponse.status_code | Tento atribut vrací stavový kód HTTP odpovědi |
HttpResponse.znaková sada | Sada znaků, která se používá k zakódování odpovědi, je definována tímto atributem. |
HttpResponse.streamování | Výchozí hodnota tohoto atributu je False. |
HttpResponse.obsah | Obsah je tímto atributem reprezentován v bajtovém řetězci. |
HttpResponse.reason_phrase | Fráze důvodu HTTP odpovědi je definována tímto atributem. |
HttpResponse.Zavřeno | Když je odpověď uzavřena, vrátí tento atribut hodnotu True. |
Metody HttpResponse:
Metoda | Popis |
---|---|
HttpResponse.__init__(content = ”, content_type = None, status = 200, reason = None, charset = None) | Tato metoda inicializuje objekt HttpResponse s daným obsahem stránky a typem obsahu. |
HttpResponse.__getitem__(záhlaví) | Tato metoda vrátí hodnotu názvu konkrétní hlavičky. |
HttpResponse.__setitem__(záhlaví, hodnota) | Konkrétní hodnota je touto metodou nastavena na název konkrétní hlavičky. |
HttpResponse.__delitem__(záhlaví) | Touto metodou je odstraněn konkrétní název záhlaví. |
HttpResponse.nastavit výchozí(záhlaví, hodnota) | Výchozí hodnota záhlaví je nastavena touto metodou. |
HttpResponse.has_header(záhlaví) | Tato metoda kontroluje existenci konkrétního názvu záhlaví. |
HttpResponse.napsat(obsah) | Touto metodou je vytvořen objekt odpovědi typu soubor. |
HttpResponse.getvalue () | Hodnota HttpResponse.obsah je načítán touto metodou. |
HttpResponse.čitelný() | Proudový objekt třídy HttpResponse je vytvořen touto metodou. |
HttpResponse.viditelný () | Tato metoda se používá k vyhledání objektu odpovědi. |
HttpResponse.sdělit() | Tato metoda se používá k vytvoření instance HttpResponse jako objekt podobný souboru. |
HttpResponse.flush () | Tato metoda se používá k vyprázdnění objektu odpovědi. |
Předpoklady:
Před procvičením skriptu tohoto tutoriálu musíte dokončit následující úkoly:
A. Nainstalujte Django verze 3+ na Ubuntu 20+ (nejlépe)
B. Vytvořte projekt Django
C. Spusťte server Django a zkontrolujte, zda server funguje správně nebo ne.
Nastavení aplikace Django:
A. Spuštěním následujícího příkazu vytvořte aplikaci Django s názvem reqresapp.
$ python3 spravovat.py startapp reqresappB. Spuštěním následujícího příkazu vytvořte uživatele pro přístup k databázi Django. Pokud jste uživatele nastavili do té doby, nemusíte tento příkaz spouštět.
$ python3 spravovat.py vytvoří superuživateleC. Přidejte název aplikace do INSTALLED_APP část nastavení.py soubor.
INSTALLED_APPS = […
'reqresapp'
]
Upravit potřebné soubory:
Upravte pohledy.py soubor s následujícím skriptem. The index() funkce skriptu načte cestu požadavku, metodu a agenta uživatele pomocí tří HttpRequest atributy. Dále budou tyto hodnoty odeslány do prohlížeče pomocí HttpResponse () metoda.
pohledy.py
# Importovat HttResponseod djanga.http import HttpResponse
# Definujte funkci pro zpracování požadavku a odpovědi
def index (požadavek):
cesta = požadavek.cesta
metoda = požadavek.metoda
userAgent = požadavek.META ['HTTP_USER_AGENT']
# požadavek je zpracován pomocí objektu HttpResponse
vrátit HttpResponse ("
Testování cyklu odpovědi na požadavek Django
"
"
Cesta požadavku: "+ cesta +
"
"
Uživatelský agent: "+ userAgent +"
Upravte adresy URL.py soubor s následujícím skriptem pro definování cesty k volání souboru index() funkce pohledy.py soubor.
adresy URL.py
# Cesta importuod djanga.cesta pro import adres URL
# Importovat pohled
z reqresapp.zobrazení indexu importu
# Definujte cestu
urlpatterns = [
cesta (", index),
]
Spuštěním následujícího příkazu spusťte server Django.
$ python3 spravovat.py runserverSpusťte následující adresu URL z prohlížeče a zkontrolujte výstup aplikace.
http: // localhost: 8000
Následující výstup ukazuje hodnoty tří HttpRequest atributů odeslaných HttpResponse.
Závěr:
Jak lze v aplikaci Django použít různé atributy a metody HttpRequest a HttpResponse jsou uvedeny v tomto kurzu. Uživatelé Django budou moci po přečtení tohoto tutoriálu používat objekty požadavků a odpovědí Django.