Razred Django HttpRequest:
HttpRequest razred se uporablja za obdelavo odjemalske zahteve, ki je definirana v django.http modul. Atributi tega razreda so navedeni spodaj.
Atributi HttpRequest:
Ime atributa | Namen |
---|---|
HttpRequest.pot | Ta atribut vrne celotno pot zahtevane strani. Shema ali domena ni vključena v vrnjeno vrednost. |
HttpRequest.pot_informacije | Ta atribut prikazuje del te informacije o poti. |
HttpRequest.metoda | Ta atribut prikazuje metodo HTTP, uporabljeno za zahtevo. |
HttpRequest.shemo | Shema zahteve (HTTP ali HTTP) je predstavljena s tem atributom. |
HttpRequest.telo | Ta atribut vrne neobdelano telo zahteve HTTP kot niz bajtov. |
HttpRequest.GET | Ta atribut vrne vse parametre HTTP GET kot objekt slovarja. |
HttpRequest.OBJAVI | Ta atribut vrne vse parametre POST HTTP kot slovarski objekt. |
HttpRequest.PIŠKOTKI | Ta atribut vrne vse razpoložljive piškotke. |
HttpRequest.DATOTEKE | Vse naložene datoteke vsebujejo ta atribut. |
HttpRequest.META | Ta atribut prikazuje vse razpoložljive glave HTTP. |
HttpRequest.vrsta_vsebine | Ta atribut prikazuje vrsto MIME zahteve, ki je razčlenjena iz glave CONTENT_TYPE. |
HttpRequest.content_params | Ta atribut vrne predmet slovarja, ki je vključen v glavo CONTENT_TYPE. |
HttpRequest.kodiranje | Ta atribut prikazuje trenutno kodiranje, ki je uporabljeno za dekodiranje poslanih podatkov obrazca. |
Metode HttpRequest:
Metoda | Namen |
---|---|
HttpRequest.get_host () | Uporablja se za vrnitev dejanskega imena gostitelja zahteve. |
HttpRequest.get_full_path () | Uporablja se za vrnitev poti in niza poizvedbe, če sta na voljo. |
HttpRequest.get_port () | Uporablja se za vrnitev številke vrat zahteve. |
HttpRequest.is_secure () | Če je zahteva podana s pomočjo HTTPS, se vrne kot True, sicer False. |
HttpRequest.is_ajax () | Če je zahteva podana z uporabo XMLHttpRequest, se vrne kot True, sicer False. |
HttpRequest.build_absolute_uri (lokacija) | Uporablja se za vrnitev absolutne lokacije URI. |
HttpRequest.get_signed_cookie (ključ, privzeto = RAISE_ERROR, sol = ”, max_age = Brez) | Uporablja se za vrnitev vrednosti piškotka za podpisani piškotek ali sproži django.jedro.podpisovanje.Izjema BadSignature za neveljaven podpis. |
Django HttpResponse:
HttpResponse razred se uporablja za obravnavo odjemalskega odziva, ki je definiran v django.http modul. Atributi tega razreda so navedeni spodaj.
Atributi HttpResponse:
Ime atributa | Namen |
---|---|
HttpResponse.statusna koda | Ta atribut vrne kodo stanja HTTP odgovora |
HttpResponse.nabor znakov | Ta atribut definira nabor znakov, ki se uporablja za kodiranje odziva. |
HttpResponse.pretakanje | Privzeta vrednost tega atributa je False. |
HttpResponse.vsebino | Ta atribut predstavlja vsebino v bajtnem nizu. |
HttpResponse.fraza_razloga | Ta atribut definira stavek razloga HTTP v odgovoru. |
HttpResponse.zaprto | Ko je odgovor zaprt, bo ta atribut vrnil True. |
Metode HttpResponse:
Metoda | Opis |
---|---|
HttpResponse.__v__(vsebina = ”, vrsta vsebine = Brez, status = 200, razlog = Brez, nabor znakov = Brez) | S to metodo se sproži objekt HttpResponse z dano vsebino strani in vrsto vsebine. |
HttpResponse.__getitem__(glava) | S to metodo se vrne vrednost določenega imena glave. |
HttpResponse.__setitem__(glava, vrednost) | S to metodo se določena vrednost nastavi na določeno ime glave. |
HttpResponse.__delitem__(glava) | S to metodo se izbriše določeno ime glave. |
HttpResponse.setdefault(glava, vrednost) | Ta metoda nastavi privzeto vrednost glave. |
HttpResponse.has_header(glava) | Obstoj določenega imena glave se preveri s to metodo. |
HttpResponse.piši(vsebina) | Datotečni odzivni objekt je ustvarjen s to metodo. |
HttpResponse.getvalue () | Vrednost HttpResponse.vsebina je naložena s to metodo. |
HttpResponse.berljivo () | Ta metoda ustvari objekt, podoben toku, razreda HttpResponse. |
HttpResponse.viden () | Ta metoda se uporablja za omogočanje iskanja odzivnega predmeta. |
HttpResponse.povej () | Ta metoda se uporablja za ustvarjanje primerka HttpResponse kot predmet, podoben datoteki. |
HttpResponse.flush () | Ta metoda se uporablja za izpiranje odzivnega predmeta. |
Pogoji:
Pred vadbo skripta te vadnice morate opraviti naslednje naloge:
A. Namestite različico Django 3+ na Ubuntu 20+ (po možnosti)
B. Ustvarite projekt Django
C. Zaženite strežnik Django, da preverite, ali strežnik deluje pravilno ali ne.
Nastavite aplikacijo Django:
A. Zaženite naslednji ukaz, da ustvarite aplikacijo Django z imenom reqresapp.
$ python3 upravljanje.py startapp reqresappB. Zaženite naslednji ukaz, da ustvarite uporabnika za dostop do baze podatkov Django. Če ste uporabnika postavili pred tem, vam ni treba zagnati ukaza.
$ python3 upravljanje.py ustvarja uporabnikaC. Dodajte ime aplikacije v INSTALLED_APP del nastavitve.stry datoteko.
INSTALLED_APPS = [..
'reqresapp'
]
Spremenite potrebne datoteke:
Spremenite poglede.py z naslednjim skriptom. The indeks () funkcija skripta bo prebrala pot zahteve, metodo in uporabniškega agenta z uporabo treh HttpRequest lastnosti. Nato bodo te vrednosti z uporabo poslane v brskalnik HttpResponse () metoda.
pogledi.py
# Uvozi HttResponseiz djanga.http uvoz HttpResponse
# Določite funkcijo za obdelavo zahteve in odziva
indeks def (zahteva):
pot = zahteva.pot
metoda = zahteva.metoda
userAgent = zahteva.META ['HTTP_USER_AGENT']
# zahteva se obravnava s pomočjo predmeta HttpResponse
vrni HttpResponse ("
Testiranje cikla odziva na zahtevo Django
"
"
Pot zahteve: "+ pot +
"
"
Uporabniški agent: "+ userAgent +"
Spremenite URL-je.py z naslednjim skriptom za določanje poti klica indeks () funkcija pogledi.py mapa.
URL-ji.py
# Uvozna potiz djanga.pot za uvoz URL-jev
# Uvozi pogled
iz reqresapp.indeks uvoza pogledov
# Določite pot
urlpatterns = [
pot (", indeks),
]
Zaženite naslednji ukaz, da zaženete strežnik Django.
$ python3 upravljanje.py runserverZaženite naslednji URL iz brskalnika, da preverite rezultate aplikacije.
http: // localhost: 8000
Naslednji izhod prikazuje vrednosti treh atributov HttpRequest, ki jih pošlje HttpResponse.
Zaključek:
Kako je mogoče v aplikaciji Django uporabiti različne atribute in metode HttpRequest in HttpResponse, je prikazano v tej vadnici. Uporabniki Djanga bodo lahko po branju te vadnice uporabljali predmete Django za zahteve in odzive.