Django

Django pieprasījuma un atbildes objektu izmantošana

Django pieprasījuma un atbildes objektu izmantošana
Pieprasījuma-atbildes cikls tiek izmantots, lai pārsūtītu datus starp klientu un serveri visu veidu tīmekļa API. Klienta-servera arhitektūra tiek izmantota Django sistēmā, lai ieviestu tīmekļa lietojumprogrammu. Pieprasījums un atbilde ir klienta-servera lietojumprogrammas divas galvenās sastāvdaļas. An HttpRequest objekts tiek izveidots Django lietojumprogrammā, kad klients pieprasa jebkuru resursu. Īpaša skata funkcija tiek izmantota, lai apstrādātu pieprasījumu un nosūtītu atbildi, izmantojot HttpResponse objekts. Dažādu atribūtu un metožu izmantošana HttpRequest un HttpResponse Django ietvara klases tiks paskaidrotas šajā apmācībā.

Django Http pieprasījuma klase:

HttpRequest klase tiek izmantota klienta pieprasījuma apstrādei, kas definēts django.http modulis. Šīs klases atribūti ir minēti turpmāk.

HttpRequest atribūti:

Atribūta nosaukums Mērķis
HttpRequest.ceļš Šis atribūts atgriež pilnu pieprasītās lapas ceļu. Shēma vai domēns nav iekļauts atgrieztajā vērtībā.
HttpRequest.ceļš_info Ceļa informācijas daļu par šo ceļu parāda šis atribūts.
HttpRequest.metodi Šis atribūts parāda pieprasījumam izmantoto HTTP metodi.
HttpRequest.shēma Pieprasījuma shēmu (HTTP vai HTTP) attēlo šis atribūts.
HttpRequest.ķermeņa Neapstrādāto HTTP pieprasījuma pamattekstu šis atribūts atdod kā baitu virkni.
HttpRequest.GŪT Šis atribūts kā vārdnīcas objektu atgriež visus HTTP GET parametrus.
HttpRequest.POST Visus HTTP POST parametrus šis atribūts atdod kā vārdnīcas objektu.
HttpRequest.Sīkdatnes Ar šo atribūtu tiek atgrieztas visas pieejamās sīkdatnes.
HttpRequest.FILES Šis atribūts satur visus augšupielādētos failus.
HttpRequest.META Šis atribūts parāda visas pieejamās HTTP galvenes.
HttpRequest.content_type Šis atribūts parāda pieprasījuma MIME veidu, kas parsēts no galvenes CONTENT_TYPE.
HttpRequest.content_params Šis atribūts atgriež vārdnīcas objektu, kas ir iekļauts galvenē CONTENT_TYPE.
HttpRequest.kodēšana Izmantotais pašreizējais kodējums iesniegto veidlapas datu dekodēšanai tiek parādīts ar šo atribūtu.

HttpRequest metodes:

Metode Mērķis
HttpRequest.get_host () To izmanto, lai atgrieztu pieprasījuma faktisko resursdatora nosaukumu.
HttpRequest.get_full_path () To izmanto, lai atgrieztu ceļu un vaicājuma virkni, ja tāda ir pieejama.
HttpRequest.get_port () To izmanto, lai atgrieztu pieprasījuma porta numuru.
HttpRequest.is_secure () Ja pieprasījums tiek veikts, izmantojot HTTPS, tas atgriežas kā Patiesi citādi Nepatiesa.
HttpRequest.is_ajax () Ja pieprasījums tiek veikts, izmantojot XMLHttpRequest, tas atgriežas kā True, citādi False.
HttpRequest.build_absolute_uri (atrašanās vieta) To izmanto, lai atgrieztu absolūto URI atrašanās vietu.
HttpRequest.get_signed_cookie (atslēga, noklusējums = RAISE_ERROR, salt = ”, max_age = Nav) To izmanto, lai atgrieztu sīkfaila vērtību parakstītam sīkfailam vai paaugstina django.kodols.parakstīšana.BadSignature izņēmums nederīgam parakstam.

Django Http Atbilde:

HttpResponse klase tiek izmantota, lai apstrādātu klienta atbildi, kas definēta django.http modulis. Šīs klases atribūti ir minēti turpmāk.

HttpResponse atribūti:

Atribūta nosaukums Mērķis
HttpResponse.status_kods Šis atribūts atgriež atbildes HTTP statusa kodu
HttpResponse.charset Char-set, kas tiek izmantots atbildes kodēšanai, ir definēts ar šo atribūtu.
HttpResponse.straumēšana Šī atribūta noklusējuma vērtība ir False.
HttpResponse.saturu Šis atribūts satur baitu virknes.
HttpResponse.iemesla_frāze Atbildes HTTP iemesla frāzi nosaka šis atribūts.
HttpResponse.slēgts Kad atbilde ir aizvērta, šis atribūts atgriezīsies True.

HttpResponse metodes:

Metode Apraksts
HttpResponse.__tajā__(saturs = ”, satura_tips = nav, statuss = 200, iemesls = nav, apzīmējums = nav) Ar šo metodi tiek uzsākts HttpResponse objekts ar norādīto lapas saturu un satura tipu.
HttpResponse.__getitem__(galvene) Ar šo metodi tiek atgriezta konkrētā galvenes nosaukuma vērtība.
HttpResponse.__setitem__(galvene, vērtība) Ar šo metodi konkrētajai vērtībai tiek iestatīts konkrētais galvenes nosaukums.
HttpResponse.__delitem__(galvene) Ar šo metodi tiek dzēsts konkrētais galvenes nosaukums.
HttpResponse.setdefault(galvene, vērtība) Ar šo metodi tiek iestatīta noklusējuma galvenes vērtība.
HttpResponse.has_header(galvene) Ar šo metodi tiek pārbaudīta konkrētā galvenes nosaukuma esamība.
HttpResponse.rakstīt(saturs) Ar šo metodi tiek izveidots failam līdzīgs atbildes objekts.
HttpResponse.getvalue () HttpResponse vērtība.saturs tiek izgūts ar šo metodi.
HttpResponse.lasāms () Ar šo metodi tiek izveidots klases HttpResponse straumei līdzīgais objekts.
HttpResponse.meklējams () Šo metodi izmanto, lai padarītu atbildes objektu meklējamu.
HttpResponse.pateikt () Šo metodi izmanto, lai izveidotu HttpResponse instanci kā failam līdzīgu objektu.
HttpResponse.noskalot () Šo metodi izmanto, lai izskalotu atbildes objektu.

Priekšnosacījumi:

Pirms praktizēt šīs apmācības skriptu, jums ir jāveic šādi uzdevumi:

A. Instalējiet Django versiju 3+ Ubuntu 20+ (vēlams)
B. Izveidojiet Django projektu
C. Palaidiet Django serveri, lai pārbaudītu, vai serveris darbojas pareizi.

Django lietotnes iestatīšana:

A. Palaidiet šo komandu, lai izveidotu Django lietotni ar nosaukumu reqresapp.

$ python3 pārvaldīt.py startapp reqresapp

B. Palaidiet šo komandu, lai izveidotu lietotāju piekļuvei Django datu bāzei. Ja esat izveidojis lietotāju pirms tam, jums nav nepieciešams palaist komandu.

$ python3 pārvaldīt.py rada liellietotāju

C. Pievienojiet lietotnes nosaukumu mapē INSTALLED_APP daļa no iestatījumi.lppy fails.

INSTALLED_APPS = [

'reqresapp'
]

Nepieciešamo failu modificēšana:

Mainīt skatus.py fails ar šādu skriptu. The rādītājs () skripta funkcija nolasīs pieprasījuma ceļu, metodi un lietotāja aģentu, izmantojot trīs HttpRequest atribūti. Pēc tam šīs vērtības tiks nosūtītas pārlūkprogrammai, izmantojot HttpResponse () metodi.

skati.py

# Importēt HttResponse
no django.http importējiet HttpResponse
# Definējiet funkciju, lai apstrādātu pieprasījumu un atbildi
def indekss (pieprasījums):
ceļš = pieprasījums.ceļš
metode = pieprasījums.metodi
userAgent = pieprasījums.META ['HTTP_USER_AGENT']
# pieprasījums tiek apstrādāts, izmantojot objektu HttpResponse
atgriezties HttpResponse ("

Django pieprasījuma atbildes cikla pārbaude


"
"

Pieprasīt ceļu: "+ ceļš +
"

Pieprasījuma metode: "+ metode +
"

Lietotāja aģents: "+ userAgent +"

")

Mainīt URL.py failu ar šādu skriptu, lai noteiktu ceļu, uz kuru izsaukt rādītājs () funkcija skati.py failu.

URL.py

# Importēšanas ceļš
no django.URL importēšanas ceļš
# Importēšanas skats
no reqresapp.skatījumu importēšanas indekss
# Definējiet ceļu
urlpatterns = [
ceļš (", indekss),
]

Palaidiet šo komandu, lai palaistu Django serveri.

$ python3 pārvaldīt.py runervers

Palaidiet šo URL no pārlūka, lai pārbaudītu lietotnes izvadi.

http: // localhost: 8000

Nākamajā izvadā tiek parādītas trīs HttpRequest atribūtu vērtības, ko nosūtījis HttpResponse.

Secinājums:

Šajā apmācībā ir parādīts, kā lietotnē Django var izmantot dažādus HttpRequest un HttpResponse atribūtus un metodes. Pēc šīs apmācības izlasīšanas Django lietotāji varēs izmantot Django pieprasījuma un atbildes objektus.

AppyMouse ekrāna skārienpaliktnis un peles rādītājs Windows planšetdatoriem
Planšetdatoru lietotājiem bieži pietrūkst peles rādītāja, it īpaši, ja viņi parasti lieto klēpjdatorus. Skārienekrāna viedtālruņiem un planšetdatoriem...
Vidējā peles poga nedarbojas sistēmā Windows 10
The peles vidējā poga palīdz jums ritināt garas tīmekļa lapas un ekrānus ar lielu datu daudzumu. Ja tas apstājas, jūs galu galā izmantosiet tastatūru,...
Kā nomainīt peles kreiso un labo pogu operētājsistēmā Windows 10
Tas ir diezgan normāli, ka visas datora peles ierīces ir ergonomiski izstrādātas lietotājiem ar labo roku. Bet ir pieejamas peles ierīces, kas ir īpaš...