Trieda Django HttpRequest:
HttpRequest trieda sa používa na vybavenie požiadavky klienta, ktorá je definovaná v django.http modul. Atribúty tejto triedy sú uvedené nižšie.
Atribúty HttpRequest:
Názov atribútu | Účel |
---|---|
HttpRequest.cesta | Tento atribút vráti úplnú cestu požadovanej stránky. Schéma alebo doména nie sú zahrnuté vo vrátenej hodnote. |
HttpRequest.cesta_info | Tento atribút zobrazuje časť informácie o ceste tejto cesty. |
HttpRequest.metóda | Tento atribút zobrazuje metódu HTTP použitú pre požiadavku. |
HttpRequest.schéma | Tento atribút predstavuje schému požiadavky (HTTP alebo HTTPs). |
HttpRequest.telo | Tento atribút vráti nespracované telo požiadavky HTTP ako bajtový reťazec. |
HttpRequest.ZÍSKAJTE | Tento atribút vracia všetky parametre HTTP GET ako objekt slovníka. |
HttpRequest.POST | Tento atribút vracia všetky parametre HTTP POST ako objekt slovníka. |
HttpRequest.COOKIES | Tento atribút vracia všetky dostupné súbory cookie. |
HttpRequest.SÚBORY | Tento atribút obsahuje všetky nahrané súbory. |
HttpRequest.META | Tento atribút zobrazuje všetky dostupné hlavičky HTTP. |
HttpRequest.Druh obsahu | Tento atribút zobrazuje typ MIME požiadavky, ktorá je analyzovaná z hlavičky CONTENT_TYPE. |
HttpRequest.content_params | Tento atribút vráti objekt slovníka, ktorý je zahrnutý v hlavičke CONTENT_TYPE. |
HttpRequest.kódovanie | Tento atribút zobrazuje použité súčasné kódovanie na dekódovanie odoslaných údajov formulára. |
Metódy HttpRequest:
Metóda | Účel |
---|---|
HttpRequest.get_host () | Používa sa na vrátenie skutočného názvu hostiteľa požiadavky. |
HttpRequest.get_full_path () | Používa sa na vrátenie cesty a reťazca dotazu, ak sú k dispozícii. |
HttpRequest.get_port () | Používa sa na vrátenie čísla portu požiadavky. |
HttpRequest.is_secure () | Ak je požiadavka zadaná pomocou protokolu HTTPS, vráti sa ako True, inak False. |
HttpRequest.is_ajax () | Ak je požiadavka zadaná pomocou XMLHttpRequest, vráti sa ako True, inak False. |
HttpRequest.build_absolute_uri (umiestnenie) | Používa sa na vrátenie absolútneho umiestnenia URI. |
HttpRequest.get_signed_cookie (kľúč, predvolené = RAISE_ERROR, soľ = ”, max_age = žiadne) | Používa sa na vrátenie hodnoty súboru cookie pre podpísaný súbor cookie alebo na zvýšenie djanga.jadro.podpisovanie.Výnimka BadSignature pre neplatný podpis. |
Django HttpResponse:
HttpResponse trieda sa používa na spracovanie odpovede klienta, ktorá je definovaná v django.http modul. Atribúty tejto triedy sú uvedené nižšie.
Atribúty HttpResponse:
Názov atribútu | Účel |
---|---|
HttpResponse.status_code | Tento atribút vráti stavový kód HTTP odpovede |
HttpResponse.znaková sada | Znaková sada, ktorá sa používa na kódovanie odpovede, je definovaná týmto atribútom. |
HttpResponse.streaming | Predvolená hodnota tohto atribútu je False. |
HttpResponse.obsah | Tento atribút predstavuje obsah v bajtovom reťazci. |
HttpResponse.dôvod_fráza | Dôvodová veta protokolu HTTP odpovede je definovaná týmto atribútom. |
HttpResponse.zatvorené | Keď je odpoveď zatvorená, vráti tento atribút hodnotu True. |
Metódy HttpResponse:
Metóda | Popis |
---|---|
HttpResponse.__init__(content = ”, content_type = None, status = 200, reason = None, charset = None) | Touto metódou sa inicializuje objekt HttpResponse s daným obsahom stránky a typom obsahu. |
HttpResponse.__getitem__(hlavička) | Touto metódou sa vráti hodnota názvu konkrétnej hlavičky. |
HttpResponse.__setitem__(hlavička, hodnota) | Táto metóda nastavuje konkrétnu hodnotu na názov konkrétnej hlavičky. |
HttpResponse.__delitem__(hlavička) | Touto metódou sa odstráni konkrétny názov hlavičky. |
HttpResponse.setdefault(hlavička, hodnota) | Týmto spôsobom sa nastavuje predvolená hodnota hlavičky. |
HttpResponse.has_header(hlavička) | Touto metódou sa kontroluje existencia konkrétneho názvu hlavičky. |
HttpResponse.napíš(obsah) | Touto metódou sa vytvorí objekt odpovede typu súbor. |
HttpResponse.getvalue () | Hodnota HttpResponse.touto metódou sa načítava obsah. |
HttpResponse.čitateľné () | Touto metódou sa vytvára prúdový objekt triedy HttpResponse. |
HttpResponse.viditeľný () | Táto metóda sa používa na to, aby bol objekt odpovede vyhľadávateľný. |
HttpResponse.povedz () | Táto metóda sa používa na vytvorenie inštancie HttpResponse ako objektu podobného súboru. |
HttpResponse.spláchnuť() | Táto metóda sa používa na vyprázdnenie objektu odpovede. |
Predpoklady:
Pred precvičením scenára tohto tutoriálu musíte splniť nasledujúce úlohy:
A. Nainštalujte si Django verzie 3+ na Ubuntu 20+ (najlepšie)
B. Vytvorte projekt Django
C. Spustením servera Django skontrolujte, či server funguje správne alebo nie.
Inštalácia aplikácie Django:
A. Spustením nasledujúceho príkazu vytvorte aplikáciu Django s názvom reqresapp.
$ python3 spravovať.py startapp reqresappB. Spustením nasledujúceho príkazu vytvorte používateľa pre prístup k databáze Django. Ak ste používateľa nastavili už predtým, nemusíte tento príkaz spúšťať.
$ python3 spravovať.py vytvorí superužívateľaC. Pridajte názov aplikácie do priečinka INSTALLED_APP časť nastavenie.py súbor.
INSTALLED_APPS = […
'reqresapp'
]
Upravte potrebné súbory:
Upravte zobrazenia.py súbor s nasledujúcim skriptom. The index () funkcia skriptu načíta cestu k žiadosti, metódu a užívateľského agenta pomocou troch HttpRequest atribúty. Ďalej sa tieto hodnoty odošlú do prehliadača pomocou HttpResponse () metóda.
názory.py
# Importovať HttResponseod djanga.http import HttpResponse
# Definujte funkciu na spracovanie požiadavky a odpovede
def index (požiadavka):
cesta = požiadavka.cesta
metóda = požiadavka.metóda
userAgent = požiadavka.META ['HTTP_USER_AGENT']
# požiadavka sa vybavuje pomocou objektu HttpResponse
vrátiť HttpResponse ("
Testovanie cyklu odpovedí na žiadosť Django
„
„
Cesta požiadavky: „+ cesta +
„
„
Agent používateľa: "+ userAgent +"
Upravte adresy URL.Súbor py s nasledujúcim skriptom na definovanie cesty volania súboru index () funkcia názory.py spis.
adresy URL.py
# Cesta importuod djanga.cesta importu adries URL
# Pohľad na import
z reqresapp.zobrazenia import index
# Definujte cestu
urlpatterns = [
cesta (", index),
]
Spustením nasledujúceho príkazu spustite server Django.
$ python3 spravovať.py runserverSpustením nasledujúcej adresy URL z prehliadača skontrolujte výstup aplikácie.
http: // localhost: 8000
Nasledujúci výstup zobrazuje hodnoty troch atribútov HttpRequest odoslaných HttpResponse.
Záver:
Ako sa dajú rôzne atribúty a metódy HttpRequest a HttpResponse použiť v aplikácii Django, zobrazuje tento návod. Používatelia Django budú môcť po prečítaní tohto tutoriálu používať objekty Django žiadosti a odpovede.