Kako ustvariti zahteve HTTP z modulom zahtev Node.js?

Kako Ustvariti Zahteve Http Z Modulom Zahtev Node Js



Zahteve HTTP so najpomembnejši in sestavni del vsake interaktivne aplikacije, te zahteve obravnavajo prenos podatkov med odjemalcem in strežniško stranjo. Če uporabnik zahteva podatke o določeni poizvedbi, bo poslal zahtevo in odgovor na to zahtevo, ki vsebuje zahtevane podatke, bo poslan s strežnika. Ta celoten postopek je odvisen ali uporablja ' HTTP ' zahteve, ki jih je mogoče ustvariti z uporabo zunanjih modulov, kot je ' prošnja ”.

Ta priročnik razlaga postopek izdelave zahtev HTTP z modulom zahtev Node.js, tako da obravnava spodnje razdelke:

Kako ustvariti zahteve HTTP z modulom zahtev Node.js?







Alternative modula zahtev Node.js



Zaključek



Kako ustvariti zahteve HTTP z uporabo modula zahtev Node.js?

' prošnja ” je najpreprostejši modul, ki pomaga pri pošiljanju ali pridobivanju zahtev HTTP. Ta modul je preveč preprost in enostaven za razumevanje, vendar razvijalcem omogoča zelo malo svobode. Poleg tega razvijalec ne more zlahka spremeniti njegove osnovne funkcionalnosti ali izboljšati njegovih ponujenih funkcij.





Opomba: Čeprav je ' prošnja ” je dober modul. Vendar so se njegovi ustvarjalci odločili prenehati delati na tem modulu in je bil 11. februarja 2020 popolnoma opuščen.

Če pa vseeno želite dobiti idejo o izvajanju tega ' prošnja ” nato sledite spodaj navedenim korakom.



1. korak: Namestitev modula »request« in inicializacija projekta Node.js

Začnite z inicializacijo » npm ” znotraj želenega imenika, da ustvarite projekt Node.js z izvajanjem ukaza:

npm init - in

Izhod kaže, da je bil »npm« uspešno inicializiran v podanem imeniku:

Nato namestite zahtevano » prošnja ” z izvedbo ukaza:

zahteva za namestitev npm

Izhod kaže, da je bila namestitev končana, a ker je ta modul zastarel, je »npm« poslal opozorilo o zastarelosti:

2. korak: Vstavljanje navidezne kode

Ustvariti ' .js ” v imeniku projekta Node.js je datoteka, v katero se programi vstavijo in pozneje izvajajo. Nato vstavite spodnje vrstice kode za ponazoritev praktične izvedbe » prošnja ”, kot je prikazano spodaj:

konst reqObj = zahtevati ( 'prošnja' )

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

reqObj ( baseUrl, ( vprašanja, vsebina ) => {

če ( vprašanja ) konzola. dnevnik ( vprašanja )

konzola. dnevnik ( vsebino ) ;

} ) ;

Razlaga zgornjega kodnega bloka je naslednja:

  • Prvič, ' prošnja ' modul je bil uvožen in njegov objekt je shranjen v novi spremenljivki z imenom ' reqObj ”.
  • Nato se URL neke spletne datoteke JSON, katere vsebino je treba pridobiti, posreduje kot vrednost za » baseUrl ” imenovana spremenljivka.
  • Potem, ' reqObj ' se prikliče kot konstruktor, spremenljivka ' baseUrl ” se posreduje kot prvi parameter, funkcija povratnega klica pa kot drugi parameter.
  • Znotraj funkcije povratnega klica je » če ” se uporablja za prikaz morebitnih napak, pridobljeni podatki pa so prikazani tudi v oknu konzole.

3. korak: Izvedba

Če želite izvesti zgornjo kodo, zaženite vsebovalno datoteko z imenom ' proApp.js ” v našem primeru z ukazom:

vozlišče proApp. js

Izhod po izvedbi pokaže, da so bili navedeni podatki pridobljeni in prikazani na konzoli:

Alternative modula zahtev Node.js

Zaradi zastarelosti » prošnja ” obstaja veliko novih zunanjih modulov, ki jih je mogoče uporabiti za izvajanje podobnih funkcij. Ti alternativni moduli so navedeni spodaj:

Alternative Opis
pridobivanje vozlišča Je obljubljeni ali tokovni modul, ki prinaša metodo window.fetch() v Node.js.
http ' http ” je privzeti modul, ki ga nudi Node.js, in ponuja več metod za interakcijo s strežniki http, hkrati pa zagotavlja več svobode.
axios Izključno temelji na obljubah in tokovih za izvajanje zahtev HTTP prek brskalnika s strani strežnika in odjemalca.
dobil Je zelo prijazna do ljudi in najmočnejša knjižnica za zahteve HTTP.
superagent Temelji na veriženju in obljubah, hkrati pa zagotavlja podporo za številne odjemalce HTTP na visoki ravni. Ima tudi nizko krivuljo učenja.
upognjen Je funkcionalen HTTP, ki vrne funkcijo asinhronega tipa.
naredi-prinesi-zgodi Izboljšana oblika ' pridobivanje vozlišča ” modul. Zdaj vključuje 'združevanje zahtev', 'podporo za predpomnilnik' in še veliko več.
igla Ta modul je najbolj jasen in napreden modul. Večinoma se uporablja za pridobivanje podatkov s pošiljanjem zahtev virom tretjih oseb.
tiny-json-http Minimalističen odjemalec HTTP, ki se uporablja za izvajanje obremenitev JSON.

Zdaj pa izvedimo zahteve HTTP z uporabo nekaterih zgoraj obravnavanih modulov.

1. način: Izdelava zahtev HTTP z uporabo privzetega modula HTTP

' http « je privzeti modul, saj se samodejno namesti v času inicializacije projekta node.js z izvajanjem ukaza » npm init « ali » npm init -y ”. Ker smo že ustvarili projekt node.js, preskočimo inicializacijske korake, prikazane na začetku tega članka, in se poglobimo neposredno v ustvarjanje zahtev http z uporabo modula »http«.

V spodnjem delčku kode je bil strežnik ustvarjen in kot odgovor je strežniku poslano lažno sporočilo:

konst httpObj = zahtevati ( 'http' ) ;

konst localServer = httpObj. createServer ( ( prošnja, odgovor ) => {

odgovor. pisati ( 'Dobrodošli na Twitter strani' ) ;

odgovor. konec ( ) ;

} ) ;

localServer. poslušaj ( 8080 , ( ) => {

konzola. dnevnik ( 'strežnik se je zagnal na številki vrat 8080.' ) ;

} ) ;

V zgornjem kodnem bloku:

  • Prvič, ' http ' modul je bil uvožen znotraj trenutne datoteke in njegov objekt je shranjen v novi spremenljivki z imenom ' httpObj ”.
  • Nato strežnik z imenom ' localServer se ustvari s priklicem createServer() ” in posredovanje funkcije povratnega klica kot njenega parametra.
  • Znotraj te funkcije pokličite ' pisati() ” in mu dodelite navidezno sporočilo, ki se prikaže na strežniku. Prav tako zaprite odzivno sejo s klicem » konec () ” lahko naključno lažno sporočilo vstavite tudi znotraj oklepaja metode.
  • Po tem naredite, da se ta strežnik izvaja prek lokalnega gostitelja s številko vrat ' 8080 ' s priklicem ' poslušaj() ” metoda.

Izvedite datoteko, ki vsebuje zgornjo kodo, tako da zaženete spodnji ukaz:

vozlišče < Ime datoteke. js >

Ustvarjeni izhod potrjuje, da so bile zahteve HTTP izvedene prek privzetega » http ” modul:

2. način: Izdelava zahteve HTTP z uporabo zunanjega modula Axios

' axios ” je najbolj priljubljen in pogosto uporabljen modul, ko gre za izvajanje zahtev HTTP v realnem času. Za uporabo tega modula ga mora razvijalec najprej namestiti tako, da izvede spodnji ukaz:

npm namestite axios

Po izvedbi ukaza se terminal prikaže takole:

Zdaj pa si oglejmo primer, v katerem je » DOBITI ” Zahteva HTTP bo uporabljena za pridobivanje podatkov iz naključnega API-ja. Nato se prejeti podatki prikažejo tudi na konzoli:

konst axiosObj = zahtevati ( 'axios' ) ;

// URL JSON Placeholder API Če želite izbrati samo del podatkov z ID-jem 5

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

//Inicializacija zahteve GET

axiosObj. dobiti ( apiUrl )

. potem ( odgovor => {

konzola. dnevnik ( 'Stanje API-ja za odgovor je:' , odgovor. stanje ) ;

konzola. dnevnik ( 'Podatki, prejeti iz API-ja kot odgovor na zahtevo:' , odgovor. podatke ) ;

} )

. ulov ( napaka => {

konzola. napaka ( 'Prišlo je do napake:' , napaka ) ;

} ) ;

Razlaga zgornjega kodnega bloka je navedena spodaj:

  • Najprej uvozite » axios ' in shranite njen primerek v spremenljivko z imenom ' axiosObj «, ki deluje kot objekt knjižnice »axios«.
  • Nato ustvarite spremenljivko ' apiUrl ” in shrani URL API-ja, iz katerega je treba pridobiti podatke. V našem primeru je URL ' https://jsonplaceholder.typicode.com/todos/5 «, ker želimo pridobiti podatke, ki imajo ID » 5 ”.
  • Zdaj s pomočjo ' axiosObj ' prikliči ' dobiti () ' in posredujte ' appURL ” znotraj tega oklepaja metode.
  • Priložite ' potem () ' metoda z ' dobiti () ' in ustvarite anonimno puščično funkcijo, ki vsebuje en sam parameter ' odgovor ”.
  • Ta ' odgovor ' deluje kot objekt, ki vsebuje vrednosti ali podatke, vrnjene kot odgovor na zahtevo prek ' dobiti () ” metoda.
  • S pomočjo tega ' odgovor ”, pridobite status zahteve in vsebino tako, da pripnete stanje « in » podatke « ključne besede zraven.
  • Na koncu priložite » ulov() ” metoda, ki prikaže napake, če so se pojavile med izvajanjem programa.

Zdaj prevedite zgornjo kodo v okolju Node.js z uporabo spodnjega ukaza na terminalu:

vozlišče < Ime datoteke >

Prikazani izhod kaže, da so bili zahtevani podatki pridobljeni iz podanega vira kot odgovor in prikazani v oknu konzole:

To je vse o izdelavi zahtev HTTP z modulom zahtev Node.js in hitrim pregledom njegovih alternativ.

Zaključek

Za zahtevo HTTP prek » prošnja ”, zahtevani URL, od koder se bo izvajalo pridobivanje. Nato se ustvari primerek modula »request« in izbrani URL, za katerega je treba implementirati zahtevo HTTP, se posreduje kot prvi parameter. Zahtevana funkcija povratnega klica se uporablja tudi za preverjanje morebitnih napak in pridobivanje vsebine ali odgovora zahteve HTTP. V tem priročniku je razložen postopek izdelave zahtev HTTP z uporabo modula za zahteve.