Sadržaj
Način rada na Node.js i od Izraziti orijentiran je na dva temeljna aspekta, prvi je da se samo jedan programski jezik koristi za postizanje svih ciljeva, a drugi je da su razvijene funkcionalnosti u stilu ODMOR kako bismo mogli imati a Back-end koja je neovisna i stoga bilo koja vrsta Prednji kraj.Da bismo uspješno razvili drugu točku, moramo imati jasne nekoliko stvari, ali najvažnije je razumjeti objekt zahtjev što ne valja s tim Izraziti i kako to funkcionira kada ih uključimo u naše aplikacije, na ovaj način možemo zabilježiti različite vrste podataka koje šalje korisnik bez potrebe da prolazimo kroz glomazne procese.
Jedna od prvih stvari koju moramo učiniti je razumjeti što naša aplikacija prima, a što ne prima, jer ćemo za to objasniti metode HTTP ali ne sa stajališta definicije tih pojmova budući da je to donekle udaljena tema, ako ne i s unutarnjeg gledišta.
Naši preglednici imaju dva načina slanja podataka izravno u aplikaciju, a to su DOBITI Y POST, prvi podaci putuju kroz URL i oni su javni, što ga čini posebnim za savjetovanje i izgradnju Stalne veze, odnosno jedinstvene veze s kojima se možete raspitati.
Način POST putuje kradomice, u smislu da korisnik ne može izravno vidjeti što se šalje. Pojavom alata otklanjanje pogrešaka U našim preglednicima te podatke već možemo lako vidjeti, čak se možemo pretvarati da šaljemo podatke s nekih alata POST.
Moramo posebno spomenuti činjenicu da preglednik izravno šalje samo te dvije metode u našu aplikaciju ne znači da ne možemo koristiti druge, a tu je Ajax u središtu pozornosti, jer putem njega možemo upućivati zahtjeve ili HTTP zahtjev drugih vrsta, kako bi se sve upravljalo putem gore navedenog protokola.
Drugi oblik podataka koji putuje kroz naš preglednik i koji nisu nužno korisnički podaci su zaglavlja koja imaju višestruku uporabu, ali u osnovi su to podaci koji nam omogućuju da identificiramo preglednik i odgovore koje čeka.
PrimjerNa primjer, ako preglednik želi preuzeti sadržaj u obliku običnog teksta jer je naša aplikacija tako uredila, moramo se pobrinuti da se prilikom podnošenja zahtjeva obradi zaglavljem običnog teksta, pa generiramo odgovor da preglednik može tumačiti na taj način.
Ali ne samo to, naša aplikacija može odgovoriti i zaglavljima koja preglednik tumači na takav način da možemo ograničiti, prikazati ili izvesti bilo koju drugu kompatibilnu radnju na rezultatu koji korisnik vidi.
Na primjer, ako ne želimo određeni preglednik (Internet Explorer) pogledajte našu aplikaciju, jednostavno uzmemo zaglavlje koje nam šalje početni zahtjev i kroz obradu zahtjeva datoteke korisnički agent naša aplikacija odlučuje hoće li prikazati rezultate navedenom pregledniku ili ne.
Predmet zahtjev To je najjednostavniji i najdetaljniji način koji imamo unutar sebe Izraziti kako bismo mogli manipulirati zahtjevima koji se generiraju korištenjem naše aplikacije, pa pomoću ovog objekta možemo uhvatiti zaglavlja, podatke koje je poslao korisnik, pa čak i podatke koje je poslao Ajax. U Izraziti možemo koristiti nekoliko elemenata koji pripadaju objektu zahtjev Za manipulaciju podacima, pogledajmo najkorisnije i njihovo odgovarajuće objašnjenje:
req.paramsOvaj nam objekt omogućuje dobivanje ruta, naziva i njihovih parametara, koristi se za dobivanje više od svih podataka koje šalje dio naše aplikacije.
req.param.nameOvaj nam objekt omogućuje da dobijemo vrijednost određene pošiljke bilo putem POST ili DOBITI, vrlo je korisno primiti samo jednu od vrijednosti.
req.queryOvo je vrlo korisno za dobivanje niz upita URL -a, obično je uparen s metodom DOBITI a vrijednosti su dobivene kao konfiguracija ključ-vrijednost, čak i ovaj objekt može biti koristan za popunjavanje neke vrste baze podataka u stilu redisa da spomenem neke.
req.bodyOva specifikacija našeg objekta omogućuje nam snimanje sadržaja zahtjeva upućenog metodom POSTMeđutim, za normalnu upotrebu ovog objekta u našoj aplikaciji potreban nam je posrednički softver kako bismo mogli zabilježiti te podatke na način da ih možemo obraditi.
req.zaglavljaOvaj objekt prima zaglavlja od klijenta, odnosno ono što smo prethodno objasnili bili bi podaci koje šalje preglednik.
req.xhrU tu svrhu možemo odrediti koju vrstu zahtjeva primamo, tako da možemo znati da je to bio Ajax ili uobičajen zahtjev preglednika, s tim ćemo znati koju vrstu obrade moramo učiniti prema logici naše aplikacije.
req.urlNa taj način možemo primiti URL klijenta, pa ćemo dobiti određenu rutu koja stiže do naše aplikacije.
Pogledajmo na sljedećoj slici neke primjere kako u Express -u možemo koristiti različite objekte zahtjev koje smo ranije definirali:
POVEĆAJTE
Iako se ovaj vodič odnosi na objekt zahtjev, predmet odgovor ovo ide ruku pod ruku s ovim, budući da kada primimo zahtjev najlogičnije je poslati odgovor i kao takvi moramo to učiniti određenom metodom. Pogledajmo dalje najvažnije metode koje možemo koristiti s objektom odgovora u Izraziti.
res.status (kod)Ovo je možda najkorisnija metoda koju imamo Izraziti, s kodom odgovora možemo pregledniku reći je li zahtjev koji je poslao bio adekvatan, je li obrada bila točna ili nema dopuštenje za pristup toj ruti s tim zahtjevom, ti kodovi koji se obrađuju su numerički i standardni, najpoznatiji je 200 prihvaćanje, nakon čega slijedi 404 koji je resurs koji nije pronađen ili 500 što je kvar servera.
res.set (polje, vrijednost)Pomoću ove metode možemo poslati vrijednost u zaglavlje preglednika, no ne preporučuje se njezina ručna uporaba.
res.send (tijelo)Omogućuje nam slanje odgovora pregledniku ili klijentu, koristi se zajedno s metodom postavljen, budući da prvi utvrđuje vrijednost i s tim vršimo pošiljku, na primjer pri razvoju određenog zaglavlja koje želimo koristiti.
res.json ()Ova metoda nam omogućuje da pošaljemo svoj odgovor u obliku JSON, kao što znamo ili bismo trebali znati, ovo je osnovni format s kojim moramo raditi pri radu JavaScript budući da nam omogućuje slanje dokumenata na jednostavan način i da se može koristiti na drugim jezicima.
res.render (pogledajte, & # 91, povratni poziv) '] Ova nam metoda omogućuje prikaz prikaza Izraziti, na primjer kada stvaramo rutu i ona mora generirati prikaz metodom iscrtati je zadužen za izvođenje ove operacije.
Pogledajmo na sljedećoj slici neke primjere objekta odgovora i kako možemo odgovarajuće poslati podatke našem klijentu ili pregledniku.
POVEĆAJTE
Iako je sva ova teorija vrlo gusta, najbolje je početi je razumijevati jer će nam na kraju omogućiti bolje odluke pri izgradnji naših web aplikacija stvorenih pomoću Izraziti.
Ovim završavamo ovaj vodič kako vidimo objekt zahtjev ne radi samo u okolišu ili ekosustavu Izraziti, budući da obično ovisi o drugim stvarima kao što su preglednik, HTTP metode i naravno svaki zahtjev generira odgovor, tu objekt dolazi u igru odgovor Ako želimo da ovo bude onaj koji izvodi sljedeću radnju, time postižemo dvosmjernu interakciju i tako dovršavamo unutarnje cikluse naše aplikacije.