Kā izveidot HTTP pieprasījumus, izmantojot pieprasījumu moduli Node.js?

Ka Izveidot Http Pieprasijumus Izmantojot Pieprasijumu Moduli Node Js



HTTP pieprasījumi ir vissvarīgākā un neatņemama jebkuras interaktīvās lietojumprogrammas sastāvdaļa, šie pieprasījumi apstrādā datu pārsūtīšanu starp klientu un servera pusi. Ja lietotājs pieprasa datus par konkrēto vaicājumu, tas nosūtīs pieprasījumu un no servera tiek nosūtīta atbilde uz šo pieprasījumu, kas satur nepieciešamos datus. Visa šī procedūra ir atkarīga no vai izmanto ' HTTP 'pieprasījumi, kurus var izveidot, izmantojot ārējos moduļus, piemēram, ' pieprasījumu ”.

Šajā rokasgrāmatā ir izskaidrota HTTP pieprasījumu veikšanas procedūra, izmantojot Node.js pieprasījumu moduli, aptverot tālāk norādītās sadaļas.

Kā izveidot HTTP pieprasījumus, izmantojot pieprasījumu moduli Node.js?







Node.js pieprasījuma moduļa alternatīvas



Secinājums



Kā izveidot HTTP pieprasījumus, izmantojot Node.js pieprasījuma moduli?

' pieprasījumu ” modulis ir visvienkāršākais modulis, kas palīdz nosūtīt vai izgūt HTTP pieprasījumus. Šis modulis ir pārāk vienkāršs un viegli saprotams, taču izstrādātājiem tas sniedz ļoti maz brīvības. Turklāt izstrādātājs nevar viegli mainīt tā pamata funkcionalitāti vai uzlabot tā nodrošinātās funkcijas.





Piezīme: Lai gan ' pieprasījumu ” ir labs modulis. Tomēr tā veidotāji nolēma pārtraukt darbu pie šī moduļa, un tā darbība tika pilnībā pārtraukta 2020. gada 11. februārī.

Taču, ja tomēr vēlies gūt priekšstatu par šīs “ pieprasījumu ” moduli, pēc tam veiciet tālāk minētās darbības.



1. darbība: “pieprasījuma” moduļa instalēšana un projekta Node.js inicializācija

Sāciet, inicializējot ' npm ” pakotnes vajadzīgajā direktorijā, lai izveidotu Node.js projektu, izpildot komandu:

npm init - un

Izvade parāda, ka “npm” ir veiksmīgi inicializēts norādītajā direktorijā:

Pēc tam instalējiet nepieciešamo ' pieprasījumu ” moduli, izpildot komandu:

npm instalēšanas pieprasījums

Izvade parāda, ka instalēšana ir pabeigta, taču, tā kā šis modulis ir novecojis, novecojušo brīdinājumu nosūtīja “npm”:

2. darbība: fiktīva koda ievietošana

Izveidojiet ' .js ” tipa failu Node.js projekta direktorijā, tas ir fails, kurā programmas tiek ievietotas un izpildītas vēlāk. Pēc tam ievietojiet tālāk norādītās koda rindiņas, lai ilustrētu ' pieprasījumu ” modulis, kā parādīts zemāk:

konst reqObj = pieprasīt ( 'pieprasījums' )

ļaujiet baseUrl = “https://jsonplaceholder.typicode.com/todos/6” ;

reqObj ( bāzes URL, ( jautājumi, saturs ) => {

ja ( jautājumiem ) konsole. žurnāls ( jautājumiem )

konsole. žurnāls ( saturu ) ;

} ) ;

Iepriekš minētā koda bloka skaidrojums ir šāds:

  • Pirmkārt, ' pieprasījumu ' modulis ir importēts, un tā objekts tiek saglabāts jaunā mainīgā ar nosaukumu ' reqObj ”.
  • Pēc tam kāda tiešsaistes JSON faila URL, kura saturs ir jāizgūst, tiek nodots kā vērtība “ baseUrl ” nosaukts mainīgais.
  • Pēc tam ' reqObj ' mainīgais tiek izsaukts kā konstruktors, un ' baseUrl ” tiek nodots kā pirmais parametrs un atzvanīšanas funkcija kā otrais parametrs.
  • Atzvanīšanas funkcijā “ ja ” paziņojums tiek izmantots, lai parādītu visas radušās kļūdas, un izgūtie dati tiek parādīti arī konsoles logā.

3. solis: izpilde

Lai izpildītu iepriekš minēto kodu, palaidiet saturošo failu ar nosaukumu ' proApp.js ” mūsu gadījumā, izmantojot komandu:

mezgls proApp. js

Izvade pēc izpildes parāda, ka norādītie dati ir izgūti un parādīti konsolē:

Node.js pieprasījuma moduļa alternatīvas

Sakarā ar “ pieprasījumu ” moduli, ir daudz jaunu ārējo moduļu, kurus var izmantot līdzīgas funkcionalitātes veikšanai. Šie alternatīvie moduļi ir norādīti zemāk:

Alternatīvas Apraksts
node-fetch Tas ir solījums vai uz straumi balstīts modulis, kas programmā Node.js nodrošina metodi window.fetch().
http ' http ” modulis ir noklusējuma modulis, ko nodrošina Node.js, un tas nodrošina vairākas metodes mijiedarbībai ar http serveriem, vienlaikus nodrošinot lielāku brīvību.
axios Pamatojoties tikai uz solījumiem un straumēm veikt HTTP pieprasījumus pārlūkprogrammā gan no servera, gan klienta puses.
ieguva Tā ir īpaši cilvēkiem draudzīga un visspēcīgākā HTTP pieprasījumu bibliotēka.
superaģents Pamatojoties uz ķēdes veidošanu un solījumiem, vienlaikus nodrošinot atbalstu daudziem augsta līmeņa HTTP klientiem. Tam ir arī zema mācīšanās līkne.
liekts Tas ir funkcionāls HTTP, kas atgriež asinhrona tipa funkciju.
padarīt-atnest-notikt Uzlabota forma node-fetch ” modulis. Tagad tas ietver arī “pieprasījumu apvienošanu”, “kešatmiņas atbalstu” un daudz ko citu.
adata Šis modulis ir skaidrākais un visprecīzākais modulis. To galvenokārt izmanto datu izgūšanai, nosūtot pieprasījumus trešo pušu avotiem.
tiny-json-http Minimālistisks HTTP klients, kas tiek izmantots JSON lietderīgās slodzes veikšanai.

Tagad izpildīsim HTTP pieprasījumus, izmantojot dažus iepriekš apspriestos moduļus.

1. metode: HTTP pieprasījumu veikšana, izmantojot noklusējuma HTTP moduli

' http ” ir noklusējuma modulis, jo tas tiek automātiski instalēts projekta node.js inicializācijas laikā, izpildot komandu „ npm init ” vai “ npm init -y ”. Tā kā mēs jau esam izveidojuši projektu node.js, mēs izlaižam inicializācijas darbības, kas parādītas šī raksta sākumā, un tieši iedziļināmies http pieprasījumu izveidē, izmantojot “http” moduli.

Tālāk esošajā koda fragmentā serveris ir izveidots, un kā atbilde uz serveri tiek nosūtīts fiktīvais ziņojums:

konst httpObj = pieprasīt ( 'http' ) ;

konst vietējaisServeris = httpObj. izveidotServeri ( ( pieprasījums, atbilde ) => {

atbildi. rakstīt ( 'Laipni lūdzam Twitter lapā' ) ;

atbildi. beigas ( ) ;

} ) ;

vietējaisServeris. klausies ( 8080 , ( ) => {

konsole. žurnāls ( 'serveris startēja ar porta numuru 8080.' ) ;

} ) ;

Iepriekš minētajā koda blokā:

  • Pirmkārt, ' http ' modulis ir importēts pašreizējā failā un tā objekts tiek saglabāts jaunā mainīgā ar nosaukumu ' httpObj ”.
  • Tālāk serveris ar nosaukumu “ vietējaisServeris ' tiek izveidots, izsaucot ' izveidotServeris() ” metodi un nododot atzvanīšanas funkciju kā tās parametru.
  • Šīs funkcijas ietvaros izsauciet ' rakstīt () ” metodi un piešķiriet tai fiktīvu ziņojumu, kas tiek parādīts serverī. Tāpat aizveriet atbildes sesiju, izsaucot ' beigas () ”, nejaušo fiktīvo ziņojumu var ievietot arī metodes iekavās.
  • Pēc tam ļaujiet šim serverim izpildīt vietējo resursdatoru, kura porta numurs ir “ 8080 ', izsaucot ' klausies () ” metode.

Izpildiet iepriekš minēto kodu, kurā ir fails, izpildot tālāk norādīto komandu:

mezgls < faila nosaukums. js >

Ģenerētā izvade apstiprina, ka HTTP pieprasījumi ir izpildīti, izmantojot noklusējuma “ http ” modulis:

2. metode: HTTP pieprasījuma izveide, izmantojot ārējo Axios moduli

' axios ” ir vispopulārākais un visplašāk izmantotais modulis, kad runa ir par HTTP pieprasījumu izpildi reāllaika vidē. Lai izmantotu šo moduli, izstrādātājam tas vispirms ir jāinstalē, izpildot tālāk norādīto komandu:

npm instalēt axios

Pēc komandas izpildes terminālis izskatās šādi:

Tagad apskatīsim piemēru, kurā “ GŪT ” HTTP pieprasījums tiks izmantots, lai izgūtu datus no nejaušas API. Pēc tam saņemtie dati tiek parādīti arī konsolē:

konst axiosObj = pieprasīt ( 'aksios' ) ;

// JSON viettura API URL, lai atlasītu tikai daļu datu, kuru ID ir 5

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

//GET pieprasījuma inicializācija

axiosObj. gūt ( apiUrl )

. tad ( atbildi => {

konsole. žurnāls ( 'API atbildes statuss ir:' , atbilde. statusu ) ;

konsole. žurnāls ( Dati, kas saņemti no API kā atbilde uz pieprasījumu: , atbilde. datus ) ;

} )

. noķert ( kļūda => {

konsole. kļūda ( 'Ir radusies kļūda:' , kļūda ) ;

} ) ;

Iepriekš minētā koda bloka skaidrojums ir norādīts zemāk:

  • Vispirms importējiet ' axios ' bibliotēku un saglabājiet tās gadījumu mainīgajā ar nosaukumu ' axiosObj ”, kas darbojas kā “axios” bibliotēkas objekts.
  • Pēc tam izveidojiet mainīgo ' apiUrl ” un saglabājiet tās API URL, no kuras ir jāizgūst dati. Mūsu gadījumā URL ir ' https://jsonplaceholder.typicode.com/todos/5 ', jo mēs vēlamies izgūt datus, kuru ID ir ' 5 ”.
  • Tagad, izmantojot ' axiosObj 'izsaukt' gūt() ' metodi un nododiet ' appURL ” mainīgais šīs metodes iekavās.
  • Pievienojiet ' tad () ' metode ar ' gūt() ' metodi un izveidojiet anonīmu bultiņas funkciju, kas satur vienu parametru ' atbildi ”.
  • Šis ' atbildi ” darbojas kā objekts, kas satur vērtības vai datus, kas atgriezti, atbildot uz pieprasījumu, izmantojot gūt() ” metode.
  • Ar šīs ' atbildi ' objektu, izgūstiet pieprasījuma statusu un saturu, pievienojot ' statusu ' un ' datus ” atslēgvārdi blakus tai.
  • Visbeidzot pievienojiet ' noķert () ” metode, kas parāda kļūdas, ja tādas radušās programmas izpildes laikā.

Tagad apkopojiet iepriekš minēto kodu Node.js vidē, izmantojot tālāk norādīto komandu terminālī:

mezgls < faila nosaukums >

Parādītā izvade parāda, ka pieprasītie dati ir izgūti no norādītā avota kā atbilde un parādīti konsoles logā:

Tas viss attiecas uz HTTP pieprasījumu veikšanu, izmantojot Node.js pieprasījumu moduli, un īsu tā alternatīvu pārskatu.

Secinājums

Lai veiktu HTTP pieprasījumu, izmantojot “ pieprasījumu ” modulis, nepieciešamais URL, no kura tiks veikta ienešana. Pēc tam tiek izveidots “pieprasījuma” moduļa gadījums un atlasītais URL, kuram ir jārealizē HTTP pieprasījums, tiek nodots kā pirmais parametrs. Nepieciešamā atzvanīšanas funkcija tiek izmantota arī, lai pārbaudītu, vai nav radušās kļūdas, un izgūtu HTTP pieprasījuma saturu vai atbildi. Šajā rokasgrāmatā ir izskaidrots HTTP pieprasījumu veikšanas process, izmantojot pieprasījuma moduli.