Django HttpFörfrågan klass:
HttpFörfrågan klass används för att hantera klientförfrågan som definieras i django.http modul. Attributen för denna klass nämns nedan.
HttpRequest-attribut:
Attributnamn | Syfte |
---|---|
HttpFörfrågan.väg | Hela sökvägen för den begärda sidan returneras av detta attribut. Schemat eller domänen ingår inte i det returnerade värdet. |
HttpFörfrågan.sökväg_info | Baninformationsdelen av den här sökvägen visas av detta attribut. |
HttpFörfrågan.metod | HTTP-metoden som används för begäran visas av detta attribut. |
HttpFörfrågan.schema | Schemat för begäran (HTTP eller HTTP) representeras av detta attribut. |
HttpFörfrågan.kropp | Den råa HTTP-begäran-kroppen returneras som en byte-sträng av detta attribut. |
HttpFörfrågan.SKAFFA SIG | Alla HTTP GET-parametrar returneras av detta attribut som ett ordbokobjekt. |
HttpFörfrågan.POSTA | Alla HTTP POST-parametrar returneras av detta attribut som ett ordbokobjekt. |
HttpFörfrågan.SMÅKAKOR | Alla tillgängliga cookies returneras av detta attribut. |
HttpFörfrågan.FILER | Alla uppladdade filer ingår i detta attribut. |
HttpFörfrågan.META | Alla tillgängliga HTTP-rubriker visas av detta attribut. |
HttpFörfrågan.innehållstyp | MIME-typen för begäran som analyseras från CONTENT_TYPE-rubriken visas av detta attribut. |
HttpFörfrågan.content_params | Ett ordbokobjekt som ingår i CONTENT_TYPE-rubriken returneras av detta attribut. |
HttpFörfrågan.kodning | Den aktuella kodningen som används för att avkoda de skickade formulärdata visas av detta attribut. |
HttpRequest Methods:
Metod | Syfte |
---|---|
HttpFörfrågan.get_host () | Den används för att returnera det faktiska värdnamnet för begäran. |
HttpFörfrågan.get_full_path () | Den används för att returnera sökvägen och frågesträngen om den är tillgänglig. |
HttpFörfrågan.get_port () | Den används för att returnera portnumret på begäran. |
HttpFörfrågan.är_säker () | Om begäran görs med HTTPS returneras den som sant annars falskt. |
HttpFörfrågan.is_ajax () | Om begäran görs med XMLHttpRequest, returneras den som sant annars falsk. |
HttpFörfrågan.build_absolute_uri (plats) | Den används för att returnera den absoluta URI-platsen. |
HttpFörfrågan.get_signed_cookie (key, default = RAISE_ERROR, salt = ”, max_age = None) | Den används för att returnera cookievärdet för en signerad cookie eller höja en django.kärna.signering.BadSignature-undantag för ogiltig signatur. |
Django Http Svar:
HttpResponse klass används för att hantera klientsvaret som definieras i django.http modul. Attributen för denna klass nämns nedan.
HttpResponse-attribut:
Attributnamn | Syfte |
---|---|
HttpResponse.status_kod | HTTP-statuskoden för svaret returneras av detta attribut |
HttpResponse.charset | Char-set som används för att koda svaret definieras av detta attribut. |
HttpResponse.strömning | Standardvärdet för detta attribut är False. |
HttpResponse.innehåll | Innehållet representeras i byte-sträng av detta attribut. |
HttpResponse.reason_phrase | HTTP-orsaksfrasen för svaret definieras av detta attribut. |
HttpResponse.stängd | När svaret stängs returnerar detta attribut True. |
HttpResponse Methods:
Metod | Beskrivning |
---|---|
HttpResponse.__i det__(content = ”, content_type = None, status = 200, reason = None, charset = None) | Ett HttpResponse-objekt med angivet sidinnehåll och innehållstyp initieras med den här metoden. |
HttpResponse.__getitem__(rubrik) | Värdet på det specifika rubriknamnet returneras med den här metoden. |
HttpResponse.__setitem__(rubrik, värde) | Det specifika värdet ställs in på det specifika rubriknamnet med den här metoden. |
HttpResponse.__delitem__(rubrik) | Det specifika rubriknamnet raderas med den här metoden. |
HttpResponse.Sätta som normalt(rubrik, värde) | Standardrubrikvärde ställs in med den här metoden. |
HttpResponse.has_header(rubrik) | Förekomsten av det specifika rubriknamnet kontrolleras med den här metoden. |
HttpResponse.skriva(innehåll) | Det filliknande svarobjektet skapas med den här metoden. |
HttpResponse.getvalue () | Värdet av HttpResponse.innehåll hämtas med denna metod. |
HttpResponse.läsbar() | Det strömliknande objektet i HttpResponse-klassen skapas med den här metoden. |
HttpResponse.sökbar () | Denna metod används för att göra svarsobjektet sökbart. |
HttpResponse.säga() | Den här metoden används för att skapa en HttpResponse-instans som ett filliknande objekt. |
HttpResponse.spola() | Denna metod används för att spola responsobjektet. |
Förutsättningar:
Innan du övar på skriptet i den här självstudien måste du slutföra följande uppgifter:
A. Installera Django version 3+ på Ubuntu 20+ (helst)
B. Skapa ett Django-projekt
C. Kör Django-servern för att kontrollera att servern fungerar korrekt eller inte.
Ställ in en Django-app:
A. Kör följande kommando för att skapa en Django-app med namnet reqresapp.
$ python3 hantera.py startapp reqresappB. Kör följande kommando för att skapa en användare för åtkomst till Django-databasen. Om du har gjort användaren innan dess behöver du inte köra kommandot.
$ python3 hantera.py skaparanvändareC. Lägg till appnamnet i INSTALLERAD_APP del av inställningar.sidy-fil.
INSTALLED_APPS = [..
'reqresapp'
]
Ändra nödvändiga filer:
Ändra vyerna.py-fil med följande skript. De index() Skriptets funktion läser begärans sökväg, metod och användaragent med hjälp av tre HttpFörfrågan attribut. Därefter skickas dessa värden till webbläsaren med hjälp av HttpResponse () metod.
utsikt.py
# Importera HttResponsefrån django.http importera HttpResponse
# Definiera funktion för att hantera begäran och svar
def index (begäran):
sökväg = begäran.väg
metod = begäran.metod
userAgent = begäran.META ['HTTP_USER_AGENT']
# begäran hanteras med HttpResponse-objekt
returnera HttpResponse ("
Testar Django Begär svarcykel
"
"
Begär sökväg: "+ sökväg +
"
"
Användaragent: "+ userAgent +"
Ändra webbadresserna.py-fil med följande skript för att definiera sökvägen för att anropa index() funktion av utsikt.py fil.
webbadresser.py
# Importera sökvägfrån django.webbadress för webbadresser
# Importera vy
från reqresapp.visar importindex
# Definiera väg
urlmönster = [
sökväg (", index),
]
Kör följande kommando för att starta Django-servern.
$ python3 hantera.py runserverKör följande URL från webbläsaren för att kontrollera utdata från appen.
http: // localhost: 8000
Följande utdata visar värdena för tre HttpRequest-attribut skickade av HttpResponse.
Slutsats:
Hur de olika attributen och metoderna för HttpRequest och HttpResponse kan användas i Django-appen visas i denna handledning. Django-användare kommer att kunna använda Django-begäran och svarsobjekt efter att ha läst denna handledning.