Kako napraviti HTTP zahtjeve s Node.js modulom zahtjeva?

Kako Napraviti Http Zahtjeve S Node Js Modulom Zahtjeva



HTTP zahtjevi su najvažniji i sastavni dio svake interaktivne aplikacije, ti zahtjevi upravljaju prijenosom podataka između klijenta i strane poslužitelja. Ako korisnik zahtijeva podatke o određenom upitu, on će poslati zahtjev i odgovor na taj zahtjev koji sadrži tražene podatke se šalje sa poslužitelja. Cijeli ovaj postupak ovisi ili koristi ' HTTP ' zahtjevi koji se mogu kreirati pomoću vanjskih modula kao što su ' zahtjev ”.

Ovaj vodič objašnjava postupak postavljanja HTTP zahtjeva s Node.js modulom zahtjeva pokrivajući donje odjeljke:

Kako napraviti HTTP zahtjeve s Node.js modulom zahtjeva?







Alternative Node.js modula zahtjeva



Zaključak



Kako napraviti HTTP zahtjeve pomoću Node.js modula zahtjeva?

' zahtjev ” modul je najjednostavniji modul koji pomaže u slanju ili dohvaćanju HTTP zahtjeva. Ovaj modul je previše jednostavan i lak za razumijevanje, ali daje vrlo malo slobode programerima. Štoviše, razvojni programer ne može lako modificirati njegovu osnovnu funkcionalnost ili poboljšati ponuđene značajke.





Bilješka: Iako ' zahtjev ” je dobar modul. Međutim, njegovi tvorci odlučili su prestati raditi na ovom modulu i on je u potpunosti obustavljen 11. veljače 2020.

Međutim, ako još uvijek želite dobiti ideju o provedbi ovog ' zahtjev ” modul zatim slijedite dolje navedene korake.



Korak 1: Instaliranje modula “request” i pokretanje Node.js projekta

Započnite inicijalizacijom ' npm ” unutar željenog direktorija za stvaranje Node.js projekta pokretanjem naredbe:

npm init - i

Izlaz pokazuje da je 'npm' uspješno inicijaliziran u navedenom direktoriju:

Zatim instalirajte potrebne ' zahtjev ” izvršavanjem naredbe:

npm instalacijski zahtjev

Izlaz pokazuje da je instalacija dovršena, ali budući da je ovaj modul zastario, to je razlog zašto je 'npm' poslao upozorenje o zastarjelom:

Korak 2: Umetanje lažnog koda

Stvoriti ' .js ” upišite datoteku unutar direktorija Node.js projekta, to je datoteka u koju se programi umeću i kasnije izvršavaju. Zatim umetnite donje retke koda kako biste ilustrirali praktičnu implementaciju ' zahtjev ”, kao što je prikazano u nastavku:

konst reqObj = zahtijevati ( 'zahtjev' )

neka baseUrl = 'https://jsonplaceholder.typicode.com/todos/6' ;

reqObj ( osnovniUrl, ( pitanja, sadržaj ) => {

ako ( pitanja ) konzola. log ( pitanja )

konzola. log ( sadržaj ) ;

} ) ;

Objašnjenje gornjeg bloka koda je sljedeće:

  • Prvo, ' zahtjev ” modul je uvezen i njegov objekt je pohranjen u novoj varijabli pod nazivom “ reqObj ”.
  • Zatim se URL neke mrežne JSON datoteke čiji sadržaj treba dohvatiti prosljeđuje kao vrijednost za ' osnovniUrl ” imenovana varijabla.
  • Onda ' reqObj ' varijabla se poziva kao konstruktor, a ' osnovniUrl ” prosljeđuje se kao prvi parametar, a funkcija povratnog poziva kao drugi parametar.
  • Unutar funkcije povratnog poziva, ' ako ” naredba se koristi za prikaz svih grešaka koje su se dogodile, a dohvaćeni podaci također se prikazuju preko prozora konzole.

Korak 3: Izvršenje

Da biste izvršili gornji kod, pokrenite datoteku koja sadrži ' proApp.js ” u našem slučaju pomoću naredbe:

čvor proApp. js

Izlaz nakon izvršenja pokazuje da su navedeni podaci dohvaćeni i prikazani na konzoli:

Alternative Node.js modula zahtjeva

Zbog zastarjevanja ' zahtjev ”, postoji mnogo novih vanjskih modula koji se mogu koristiti za izvođenje sličnih funkcija. Ovi alternativni moduli navedeni su u nastavku:

Alternative Opis
dohvaćanje čvora To je modul temeljen na obećanju ili streamu koji donosi metodu window.fetch() u Node.js.
http ' http ” modul je zadani modul koji nudi Node.js i pruža nekoliko metoda za interakciju s http poslužiteljima uz pružanje više slobode.
axios Isključivo temeljeno na obećanjima i tokovima za izvođenje HTTP zahtjeva preko preglednika s poslužitelja i klijenta.
dobio Super je prilagođen ljudima i najmoćnija je biblioteka za HTTP zahtjeve.
superagent Utemeljeno na ulančavanju i obećanjima uz pružanje podrške za mnoge HTTP klijente visoke razine. Također ima nisku krivulju učenja.
savijena To je funkcionalni HTTP koji vraća funkciju asinkronog tipa.
napraviti-dohvatiti-dogoditi se Poboljšani oblik ' dohvaćanje čvora ” modul. Sada uključuje 'udruživanje zahtjeva', 'podršku za predmemoriju' i još mnogo toga.
igla Ovaj modul je najjasniji i najnapredniji modul. Uglavnom se koristi za dohvaćanje podataka slanjem zahtjeva izvorima trećih strana.
maleni-json-http Minimalistički HTTP klijent koji se koristi za izvođenje JSON sadržaja.

Izvršimo sada HTTP zahtjeve korištenjem nekih modula o kojima smo govorili gore.

Metoda 1: Izrada HTTP zahtjeva pomoću zadanog HTTP modula

' http ” je zadani modul jer se automatski instalira u vrijeme pokretanja projekta node.js pokretanjem naredbe “ npm init ' ili ' npm init -y ”. Budući da smo već izradili projekt node.js, preskačemo korake inicijalizacije prikazane na početku ovog članka i uranjamo izravno u stvaranje http zahtjeva pomoću 'http' modula.

U donjem isječku koda, poslužitelj je kreiran i kao odgovor poslužitelju se šalje lažna poruka:

konst httpObj = zahtijevati ( 'http' ) ;

konst lokalni poslužitelj = httpObj. createServer ( ( zahtjev, odgovor ) => {

odgovor. pisati ( 'Dobro došli na Twitter stranicu' ) ;

odgovor. kraj ( ) ;

} ) ;

lokalni poslužitelj. slušati ( 8080 , ( ) => {

konzola. log ( 'poslužitelj pokrenut na portu broj 8080.' ) ;

} ) ;

U gornjem bloku koda:

  • Prvo, ' http ” modul je uvezen unutar trenutne datoteke i njegov objekt je pohranjen u novoj varijabli pod nazivom “ httpObj ”.
  • Zatim, poslužitelj pod nazivom ' lokalni poslužitelj ' se stvara pozivanjem ' kreiraj poslužitelj() ” metoda i prosljeđivanje funkcije povratnog poziva kao njenog parametra.
  • Unutar ove funkcije pozovite ' pisati() ” i dodijelite mu lažnu poruku koja se prikazuje na poslužitelju. Također, zatvorite sesiju odgovora pozivanjem ' kraj() ”, nasumična lažna poruka također se može umetnuti unutar zagrade metode.
  • Nakon toga, izvršite ovaj poslužitelj preko lokalnog hosta koji ima broj porta ' 8080 ” pozivanjem na “ slušati() ” metoda.

Izvršite datoteku koja sadrži gornji kod tako što ćete pokrenuti naredbu u nastavku:

čvor < naziv datoteke. js >

Generirani izlaz potvrđuje da su HTTP zahtjevi izvršeni putem zadanog ' http ” modul:

Metoda 2: Izrada HTTP zahtjeva pomoću vanjskog Axios modula

' axios ” najpopularniji je i najčešće korišten modul kada je riječ o izvršavanju HTTP zahtjeva u okruženju u stvarnom vremenu. Da bi koristio ovaj modul, programer ga prvo mora instalirati izvršavanjem naredbe u nastavku:

npm instalirati axios

Nakon izvršenja naredbe, terminal izgleda ovako:

Sada, pogledajmo primjer u kojem je ' DOBITI ” HTTP zahtjev će se koristiti za dohvaćanje podataka iz nasumičnog API-ja. Zatim se primljeni podaci prikazuju i preko konzole:

konst axiosObj = zahtijevati ( 'axios' ) ;

// URL API-ja JSON rezerviranog mjesta za odabir samo dijela podataka koji imaju ID 5

konst apiUrl = 'https://jsonplaceholder.typicode.com/todos/5' ;

//Inicijalizacija GET zahtjeva

axiosObj. dobiti ( apiUrl )

. zatim ( odgovor => {

konzola. log ( 'Status za API odgovor je:' , odgovor. status ) ;

konzola. log ( 'Podaci primljeni od API-ja kao odgovor na zahtjev:' , odgovor. podaci ) ;

} )

. ulov ( greška => {

konzola. greška ( 'Došlo je do pogreške:' , pogreška ) ;

} ) ;

Objašnjenje gornjeg bloka koda navedeno je u nastavku:

  • Prvo uvezite ' axios ” biblioteku i pohranite njezinu instancu u varijablu pod nazivom „ axiosObj ” koji djeluje kao objekt biblioteke “axios”.
  • Zatim stvorite varijablu ' apiUrl ” i pohranjuju URL API-ja s kojeg se podaci trebaju dohvatiti. U našem slučaju, URL je ' https://jsonplaceholder.typicode.com/todos/5 ' jer želimo dohvatiti podatke koji imaju ID ' 5 ”.
  • Sada, uz pomoć ' axiosObj ' pozvati ' dobiti() ' metodu i proslijedite ' appURL ” varijabla unutar ove zagrade metode.
  • Priložite ' zatim() ' metoda s ' dobiti() ' i izradite anonimnu funkciju strelice koja sadrži jedan parametar ' odgovor ”.
  • ovo ' odgovor ' djeluje kao objekt koji sadrži vrijednosti ili podatke vraćene kao odgovor na zahtjev putem ' dobiti() ” metoda.
  • Uz pomoć ovog “ odgovor ', dohvatite status zahtjeva i sadržaja prilaganjem ' status ' i ' podaci ” ključne riječi pored njega.
  • Na kraju priložite ' ulov() ” metoda koja prikazuje pogreške ako su se pojavile tijekom izvođenja programa.

Sada kompajlirajte gornji kod u okruženju Node.js koristeći donju naredbu na terminalu:

čvor < naziv datoteke >

Prikazani izlaz pokazuje da su traženi podaci dohvaćeni iz navedenog izvora kao odgovor i prikazani preko prozora konzole:

To je sve o izradi HTTP zahtjeva s Node.js Request Module i brzim pregledom njegovih alternativa.

Zaključak

Za upućivanje HTTP zahtjeva putem ' zahtjev ”, potreban URL s kojeg će se izvršiti dohvaćanje. Zatim se kreira instanca modula “zahtjev”, a odabrani URL za koji je potrebno implementirati HTTP zahtjev prosljeđuje se kao prvi parametar. Potrebna funkcija povratnog poziva također se koristi za provjeru eventualnih pogrešaka i dohvaćanje sadržaja ili odgovora HTTP zahtjeva. Ovaj vodič objasnio je postupak izrade HTTP zahtjeva pomoću modula zahtjeva.