Hogyan készítsünk HTTP-kéréseket a Node.js kérési modullal?

Hogyan Keszitsunk Http Kereseket A Node Js Keresi Modullal



A HTTP kérések minden interaktív alkalmazás legfontosabb és szerves részét képezik, ezek a kérések kezelik a kliens és a szerver oldal közötti adatátvitelt. Ha a felhasználó adatot kér az adott lekérdezésről, akkor kérést küld, és erre a kérésre a szükséges adatokat tartalmazó válasz érkezik a szervertől. Ez az egész eljárás a „ HTTP ' kérések, amelyek külső modulokkal hozhatók létre, mint például ' kérés ”.

Ez az útmutató elmagyarázza a HTTP-kérések Node.js Request Module segítségével történő létrehozásának folyamatát az alábbi szakaszok áttekintésével:

Hogyan készítsünk HTTP-kéréseket a Node.js kérési modullal?







A Node.js kérési modul alternatívái



Következtetés



Hogyan készítsünk HTTP-kéréseket a Node.js kérési modul használatával?

A ' kérés ” modul a legegyszerűbb modul, amely segít a HTTP kérések küldésében vagy lekérésében. Ez a modul túl egyszerű és könnyen érthető, de nagyon kevés szabadságot biztosít a fejlesztőknek. Ezen túlmenően a fejlesztő nem tudja könnyen módosítani az alapvető funkcionalitást, vagy javítani a szolgáltatásait.





Jegyzet: Habár a ' kérés ” egy jó modul. Az alkotók azonban úgy döntöttek, hogy leállítják a modulon való munkát, és 2020. február 11-én teljesen elavulttá vált.

Ha azonban mégis szeretne ötletet kapni ennek a megvalósításáról kérés ” modult, majd kövesse az alábbi lépéseket.



1. lépés: A „request” modul telepítése és a Node.js projekt inicializálása

Kezdje a „ npm ” csomagokat a kívánt könyvtárba, hogy létrehozzon egy Node.js projektet a parancs futtatásával:

npm init - és

A kimenet azt mutatja, hogy az „npm” sikeresen inicializálva lett a megadott könyvtárban:

Ezután telepítse a szükséges ' kérés ” modult a következő parancs végrehajtásával:

npm telepítési kérés

A kimenet azt mutatja, hogy a telepítés befejeződött, de mivel ez a modul elavult, ezért az „npm” az elavult figyelmeztetést küldte:

2. lépés: Dummy Code beszúrása

Hozzon létre egy ' .js ” típusú fájl a Node.js projektkönyvtárban, ez az a fájl, amelybe a programok beilleszthetők és a későbbiekben végrehajtásra kerülnek. Ezután illessze be az alábbi kódsorokat a „ kérés ” modul, az alábbiak szerint:

const reqObj = igényelnek ( 'kérés' )

legyen baseUrl = „https://jsonplaceholder.typicode.com/todos/6” ;

reqObj ( baseUrl, ( kérdések, tartalom ) => {

ha ( problémák ) konzol. log ( problémák )

konzol. log ( tartalom ) ;

} ) ;

A fenti kódblokk magyarázata a következő:

  • Először is a „ kérés ' modul importálva lett, és az objektuma egy új változóban van eltárolva ' reqObj ”.
  • Ezután néhány online JSON-fájl URL-címe, amelynek tartalmát le kell kérni, a „ baseUrl ” nevű változót.
  • Aztán a ' reqObj ' változót hívják meg konstruktorként, és a ' baseUrl ” első paraméterként, a visszahívási függvény pedig második paraméterként kerül átadásra.
  • A visszahívási funkción belül a „ ha ” utasítás az esetleges hibák megjelenítésére szolgál, és a visszakeresett adatok is megjelennek a konzol ablakában.

3. lépés: Végrehajtás

A fenti kód végrehajtásához futtassa a '' nevű fájlt. proApp.js ” esetünkben a következő paranccsal:

csomópont proApp. js

A végrehajtás után a kimenet azt mutatja, hogy a megadott adatok lekérésre és megjelenítésre kerültek a konzolon:

A Node.js kérési modul alternatívái

Az elévülés miatt a „ kérés ” modul, rengeteg új külső modul található, amelyekkel hasonló funkciókat lehet végrehajtani. Ezeket az alternatív modulokat az alábbiakban ismertetjük:

Alternatívák Leírás
node-fetch Ez egy ígéret vagy adatfolyam alapú modul, amely egy window.fetch() metódust hoz a Node.js-ben.
http A ' http ” modul a Node.js által biztosított alapértelmezett modul, amely számos módszert biztosít a http-kiszolgálókkal való interakcióhoz, miközben nagyobb szabadságot biztosít.
axiók Pusztán ígéretek és adatfolyamok alapján, amelyek HTTP-kéréseket hajtanak végre a böngészőn keresztül, mind a szerver, mind az ügyfél oldaláról.
kapott Szuper emberbarát és a legerősebb könyvtár a HTTP-kérésekhez.
szuperügynök Láncoláson és ígéreteken alapul, miközben számos magas szintű HTTP-ügyfél számára nyújt támogatást. Alacsony tanulási görbéje is van.
hajlított Ez egy funkcionális HTTP, amely aszinkron típusú függvényt ad vissza.
csinál-hoz-megtörténik A ' node-fetch ” modult. Most már tartalmazza a „kérelemgyűjtést”, a „gyorsítótár támogatást” és még sok más dolgot is.
Ez a modul a legvilágosabb és legelőremutatóbb modul. Leggyakrabban adatok lekérésére szolgál harmadik féltől származó forrásokhoz küldött kérések útján.
tiny-json-http Minimalista HTTP-ügyfél, amelyet a JSON-terhelések végrehajtására használnak.

Most hajtsunk végre HTTP kéréseket néhány fent tárgyalt modul használatával.

1. módszer: HTTP-kérések készítése az alapértelmezett HTTP-modul használatával

A ' http ' egy alapértelmezett modul, mivel automatikusan telepítődik a node.js projekt inicializálásakor a ' parancs futtatásával npm init ” vagy „ npm init -y ”. Mivel már létrehoztunk egy node.js projektet, kihagyjuk a cikk elején bemutatott inicializálási lépéseket, és közvetlenül belemerülünk a http kérések létrehozásába a „http” modul használatával.

Az alábbi kódrészletben a szerver létrejött, és válaszként az álüzenet elküldésre kerül a szervernek:

const httpObj = igényelnek ( 'http' ) ;

const localServer = httpObj. createServer ( ( kérés, válasz ) => {

válasz. ír ( 'Üdvözöljük a Twitter oldalon' ) ;

válasz. vége ( ) ;

} ) ;

localServer. hallgat ( 8080 , ( ) => {

konzol. log ( 'a szerver a 8080-as porton indult.' ) ;

} ) ;

A fenti kódblokkban:

  • Először is a „ http ' modul importálva lett az aktuális fájlba, és az objektuma egy új változóban van eltárolva ' httpObj ”.
  • Ezután a „ localServer ' létrehozása a ' CreateServer() ” metódussal, és paraméterként a visszahívási függvényt adjuk át.
  • Ezen a függvényen belül hívjon meg egy ' ír() ” módszert, és rendeljen hozzá egy álüzenetet, amely megjelenik a szerveren. Ezenkívül zárja be a válaszmenetet a „ vége() ” üzenetet, a véletlenszerű dummy üzenet a metódus zárójelébe is beilleszthető.
  • Ezt követően hajtsa végre ezt a szervert a 'portszámú helyi gépen' 8080 ' a ' hallgat() ” módszerrel.

Futtassa a fenti kódot tartalmazó fájlt az alábbi parancs futtatásával:

csomópont < fájl név. js >

A generált kimenet megerősíti, hogy a HTTP kérések az alapértelmezett ' http ” modul:

2. módszer: HTTP-kérés létrehozása külső Axios modul használatával

A ' axiók ” a legnépszerűbb és legszélesebb körben használt modul, ha HTTP-kérések valós idejű környezetben való végrehajtásáról van szó. A modul használatához a fejlesztőnek először telepítenie kell azt az alábbi parancs végrehajtásával:

npm install axios

A parancs végrehajtása után a terminál így jelenik meg:

Most nézzünk egy példát, amelyben a „ KAP ” HTTP kérést fog használni az adatok lekérésére egy véletlenszerű API-ból. Ezután a fogadott adatok a konzolon is megjelennek:

const axiosObj = igényelnek ( 'axiók' ) ;

// A JSON-helyőrző API URL-címe Az 5-ös azonosítójú adatoknak csak egy részének kijelölése

const apiUrl = „https://jsonplaceholder.typicode.com/todos/5” ;

//A GET Request inicializálása

axiosObj. kap ( apiUrl )

. akkor ( válasz => {

konzol. log ( 'Az API-tól származó válasz állapota:' , válasz. állapot ) ;

konzol. log ( 'Az API-tól kérésre válaszként kapott adatok:' , válasz. adat ) ;

} )

. fogás ( hiba => {

konzol. hiba ( 'A hiba megtörtént:' , hiba ) ;

} ) ;

A fenti kódblokk magyarázata az alábbiakban található:

  • Először importálja a ' axiók ' könyvtárat, és tárolja a példányát a ' nevű változóban axiosObj ” amely az „axios” könyvtár objektumaként működik.
  • Ezután hozzon létre egy változót ' apiUrl ” és tárolja annak az API-nak az URL-jét, amelyről az adatokat le kell kérni. Esetünkben az URL „ https://jsonplaceholder.typicode.com/todos/5 ' mert olyan adatokat akarunk lekérni, amelyek azonosítója ' 5 ”.
  • Most a „ axiosObj ' hívja elő a ' kap() ” módszert, és adja át a „ appURL ” változó a metódus zárójelében.
  • Csatolja a ' akkor() ' módszer a ' kap() ” metódussal, és hozzon létre egy névtelen nyílfüggvényt, amely a „ válasz ”.
  • ez a ' válasz ' objektumként működik, amely tartalmazza a kérésre válaszul visszaadott értékeket vagy adatokat a ' kap() ” módszerrel.
  • Ennek segítségével' válasz ' objektum, kérje le a kérés és a tartalom állapotát a ' állapot ” és „ adat ” kulcsszavak mellett.
  • Végül csatolja a „ fogás() ” metódus, amely megjeleníti a hibákat, ha azok a program végrehajtása során előfordultak.

Most fordítsa le a fenti kódot a Node.js környezetben a terminál alábbi parancsával:

csomópont < fájl név >

A megjelenített kimenet azt mutatja, hogy a kért adatokat válaszként lekértük a megadott forrásból, és megjelenik a konzol ablakában:

Ez minden a Node.js Request Module segítségével történő HTTP-kérésekről és az alternatívák gyors áttekintéséről szól.

Következtetés

HTTP kérés kezdeményezése a „ kérés ” modul, a szükséges URL-cím, ahonnan a lekérés végrehajtásra kerül. Ezután létrejön a „request” modulpéldány, és első paraméterként a kiválasztott URL-cím, amelyhez a HTTP-kérést meg kell valósítani. A szükséges visszahívási funkció az esetleges hibák ellenőrzésére és a HTTP-kérés tartalmának vagy válaszának lekérésére is szolgál. Ez az útmutató elmagyarázza a HTTP-kérések kérésmodul használatával történő létrehozásának folyamatát.