Django HttpForespørgselsklasse:
HttpForespørgsel klasse bruges til at håndtere den klientanmodning, der er defineret i django.http modul. Attributterne for denne klasse er nævnt nedenfor.
HttpRequest Attributter:
Attributnavn | Formål |
---|---|
HttpForespørgsel.sti | Den fulde sti til den anmodede side returneres af denne attribut. Ordningen eller domænet er ikke inkluderet i den returnerede værdi. |
HttpForespørgsel.sti_info | Stien info del af denne sti vises af denne attribut. |
HttpForespørgsel.metode | HTTP-metoden, der anvendes til anmodningen, vises af denne attribut. |
HttpForespørgsel.ordning | Ordningen med anmodningen (HTTP eller HTTP'er) er repræsenteret af denne attribut. |
HttpForespørgsel.legeme | Det rå HTTP-anmodningselement returneres som en bytestreng af denne attribut. |
HttpForespørgsel.FÅ | Alle HTTP GET-parametre returneres af denne attribut som et ordbogobjekt. |
HttpForespørgsel.STOLPE | Alle HTTP POST-parametre returneres af denne attribut som et ordbogobjekt. |
HttpForespørgsel.COOKIES | Alle tilgængelige cookies returneres af denne attribut. |
HttpForespørgsel.FILER | Alle uploadede filer er indeholdt i denne attribut. |
HttpForespørgsel.META | Alle tilgængelige HTTP-headere vises med denne attribut. |
HttpForespørgsel.indholdstype | MIME-typen for anmodningen, der parses fra CONTENT_TYPE-overskriften, vises af denne attribut. |
HttpForespørgsel.content_params | Et ordbogobjekt, der er inkluderet i CONTENT_TYPE-overskriften, returneres af denne attribut. |
HttpForespørgsel.indkodning | Den anvendte aktuelle kodning til at afkode de indsendte formulardata vises af denne attribut. |
HttpRequest Metoder:
Metode | Formål |
---|---|
HttpForespørgsel.get_host () | Det bruges til at returnere anmodningens faktiske værtsnavn. |
HttpForespørgsel.get_full_path () | Det bruges til at returnere stien og forespørgselsstrengen, hvis den er tilgængelig. |
HttpForespørgsel.get_port () | Det bruges til at returnere portnummeret på anmodningen. |
HttpForespørgsel.er_sikker () | Hvis anmodningen foretages ved hjælp af HTTPS, returneres den som sand ellers falsk. |
HttpForespørgsel.is_ajax () | Hvis anmodningen foretages ved hjælp af XMLHttpRequest, returneres den som sandt ellers falsk. |
HttpForespørgsel.build_absolute_uri (Beliggenhed) | Det bruges til at returnere den absolutte URI-placering. |
HttpForespørgsel.get_signed_cookie (nøgle, standard = RAISE_ERROR, salt = ”, max_age = Ingen) | Det bruges til at returnere cookieværdien for en signeret cookie eller hæver en django.kerne.underskrift.BadSignature-undtagelse for den ugyldige signatur. |
Django Http Svar:
HttpResponse klasse bruges til at håndtere klientsvar, der er defineret i django.http modul. Attributterne for denne klasse er nævnt nedenfor.
HttpResponse attributter:
Attributnavn | Formål |
---|---|
HttpResponse.status_code | HTTP-statuskoden for svaret returneres af denne attribut |
HttpResponse.tegnsæt | Char-sæt, der bruges til at kode svaret, defineres af denne attribut. |
HttpResponse.streaming | Standardværdien af denne attribut er Falsk. |
HttpResponse.indhold | Indholdet er repræsenteret i byte-streng ved denne attribut. |
HttpResponse.reason_phrase | HTTP-årsagssætningen for svaret er defineret af denne attribut. |
HttpResponse.lukket | Når svaret lukkes, returnerer denne attribut Sand. |
HttpResponse Metoder:
Metode | Beskrivelse |
---|---|
HttpResponse.__i det__(content = ”, content_type = None, status = 200, reason = None, charset = None) | Et HttpResponse-objekt med det givne sideindhold og indholdstype initieres ved denne metode. |
HttpResponse.__getitem__(header) | Værdien af det bestemte headernavn returneres ved denne metode. |
HttpResponse.__setitem__(overskrift, værdi) | Den særlige værdi indstilles til det bestemte headernavn ved denne metode. |
HttpResponse.__delitem__(header) | Det bestemte headernavn slettes ved denne metode. |
HttpResponse.sæt standard(overskrift, værdi) | Standard headerværdien indstilles ved denne metode. |
HttpResponse.has_header(header) | Eksistensen af det bestemte headernavn kontrolleres ved denne metode. |
HttpResponse.skrive(indhold) | Det fillignende svarobjekt oprettes ved denne metode. |
HttpResponse.getvalue () | Værdien af HttpResponse.indhold hentes ved denne metode. |
HttpResponse.læselig() | Det strømlignende objekt i HttpResponse-klassen oprettes ved denne metode. |
HttpResponse.søgbar () | Denne metode bruges til at gøre responsobjektet søgbart. |
HttpResponse.fortælle() | Denne metode bruges til at oprette en HttpResponse-forekomst som et fillignende objekt. |
HttpResponse.Flush() | Denne metode bruges til at skylle responsobjektet. |
Forudsætninger:
Før du træner scriptet til denne vejledning, skal du udføre følgende opgaver:
EN. Installer Django version 3+ på Ubuntu 20+ (helst)
B. Opret et Django-projekt
C. Kør Django-serveren for at kontrollere, at serveren fungerer korrekt eller ej.
Konfigurer en Django-app:
EN. Kør følgende kommando for at oprette en Django-app med navnet reqresapp.
$ python3 administrere.py startapp reqresappB. Kør følgende kommando for at oprette en bruger til at få adgang til Django-databasen. Hvis du har oprettet brugeren inden da, behøver du ikke køre kommandoen.
$ python3 administrere.py skaberbrugerC. Tilføj appnavnet i INSTALLERET_APP en del af indstillinger.sy-fil.
INSTALLED_APPS = [..
'reqresapp'
]
Rediger de nødvendige filer:
Rediger visningerne.py-fil med følgende script. Det indeks() funktion af scriptet læser anmodningsstien, metoden og brugeragenten ved hjælp af tre HttpForespørgsel egenskaber. Derefter sendes disse værdier til browseren ved hjælp af HttpResponse () metode.
synspunkter.py
# Importer HttResponsefra django.http importer HttpResponse
# Definer funktion til håndtering af anmodning og svar
def index (anmodning):
sti = anmodning.sti
metode = anmodning.metode
userAgent = anmodning.META ['HTTP_USER_AGENT']
# anmodning håndteres ved hjælp af HttpResponse-objekt
returner HttpResponse ("
Test af Django-anmodningsresponscyklus
"
"
Anmod sti: "+ sti +
"
"
Brugeragent: "+ userAgent +"
Rediger webadresserne.py-fil med følgende script til at definere stien, der skal kaldes til indeks() funktion af synspunkter.py fil.
webadresser.py
# Importer stifra django.webadresser til import af sti
# Importvisning
fra reqresapp.viser importindeks
# Definer sti
urlmønstre = [
sti (", indeks),
]
Kør følgende kommando for at starte Django-serveren.
$ python3 administrere.py runserverKør følgende URL fra browseren for at kontrollere output af appen.
http: // localhost: 8000
Følgende output viser værdierne for tre HttpRequest-attributter sendt af HttpResponse.
Konklusion:
Hvordan de forskellige attributter og metoder i HttpRequest og HttpResponse kan bruges i Django-appen vises i denne vejledning. Django-brugerne vil være i stand til at bruge Django-anmodnings- og svarobjekterne efter at have læst denne tutorial.