A Node.js keretrendszert leginkább szerver alapú alkalmazások létrehozására használják. A keretrendszer könnyen felhasználható webszerverek létrehozására, amelyek tartalmat szolgálnak ki a felhasználók számára.
Számos modul létezik, például a "http" és a "kérés" modul, amely segít a szerverrel kapcsolatos kérések feldolgozásában a webszerver térben. Megnézzük, hogyan hozhatunk létre egy alapvető webszerver alkalmazást a Node js használatával.
Csomópont webszerverként HTTP használatával
Nézzünk meg egy példát az első Node js alkalmazásunk létrehozására és futtatására.
Alkalmazásunk egy egyszerű kiszolgáló modult fog létrehozni, amely a 7000-es porton fog hallgatni. Ha a böngészőn keresztül erre a portra kérünk egy kérést, akkor a kiszolgáló alkalmazás egy „Hello World” választ küld az ügyfélnek.
Kód Magyarázat:
- A szükséges függvény alapvető funkciója az, hogy elolvassa a JavaScript fájlt, végrehajtja a fájlt, majd folytatja az exportobjektum visszaküldését. Tehát esetünkben, mivel a http modul funkcionalitását akarjuk használni, a megkövetelt függvényt használjuk a kívánt függvények megszerzéséhez a http modulból, hogy az felhasználható legyen az alkalmazásunkban.
- Ebben a kódsorban egy szerver alkalmazást hozunk létre, amely egy egyszerű funkción alapul. Ezt a funkciót akkor hívják meg, amikor kérést küldenek a szerver alkalmazásunkhoz.
- Amikor megkeresés érkezik, azt mondjuk, hogy küldjön választ, amelynek fejléc-típusa „200”. Ez a szám a normál válasz, amelyet egy http fejlécben küldünk, amikor sikeres választ küldünk az ügyfélnek.
- Magában a válaszban a „Hello World” karakterláncot küldjük.
- Ezután a server.listen függvényt használjuk arra, hogy a szerveralkalmazásunk meghallgassa az ügyfélkéréseket a 7000-es számú porton. Itt megadhat minden elérhető portot.
A parancs sikeres végrehajtása esetén a következő kimenet jelenik meg, amikor a böngészőben futtatja a kódot.
Kimenet:
A kimenetből
- Világosan láthatja, hogy ha a localhost URL-jére böngészünk a 7000-es porton, akkor az oldalon megjelenik a „Hello World” karakterlánc.
- Mivel kódunkban kifejezetten említettük, hogy a szerver hallgassa a 7000-es portot, képesek vagyunk megtekinteni a kimenetet, amikor erre az URL-re böngészünk.
Itt található a hivatkozás kódja
var http=require('http')var server=http.createServer((function(request,response){response.writeHead(200,{"Content-Type" : "text/plain"});response.end("Hello World\n");}));server.listen(7000);
GET kérések kezelése a Node.js fájlban
A Node.js-ben viszonylag nagyon egyszerű GET-kérelmet benyújtani az adatok más webhelyről történő megszerzésére. Ahhoz, hogy a csomópontban lekérést kapjunk, először telepítenünk kell a kérelem modult. Ezt úgy teheti meg, hogy a következő sort futtatja a parancssorban
npm telepítési kérelem
A fenti parancs arra kéri a Node csomagkezelőt, hogy töltse le a szükséges kérési modulokat, és ennek megfelelően telepítse őket.
Az npm modul sikeres telepítése után a parancssor megjeleníti a telepített modul nevét és verzióját:
A fenti pillanatképen láthatja, hogy a 'request' modul a 2.67.0 verziószámmal együtt letöltésre és telepítésre került.
Most nézzük meg a kódot, amely felhasználhatja ezt a 'kérés' parancsot.
Kód Magyarázat:
- Az utolsó lépésben telepített 'request' modult használjuk. Ez a modul rendelkezik a szükséges funkciókkal, amelyek felhasználhatók GET-kérelmek elküldéséhez a webhelyekhez.
- GET-kérést küldünk a www.google.com címre, és ezt követően hívunk egy funkciót, amikor válasz érkezik. Amikor válasz érkezik, a paramétereknek (hiba, válasz és törzs) a következő értékek lesznek
- Hiba - Ha bármilyen hiba érkezik a GET kérés használatakor, akkor itt rögzítésre kerül.
- Válasz - A válasznak meg lesznek a http fejlécei, amelyeket visszaküldenek a válaszban.
- Test - A törzs tartalmazza a Google által küldött válasz teljes tartalmát.
- Ebben csak a törzsparaméterbe beérkezett tartalmat írjuk a console.log fájlba. Tehát alapvetően, bármit is kapunk a www.google.com webhelyre történő felkereséssel , a konzol.logba írjuk.
Itt található a hivatkozás kódja
var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});
Összegzés
- A Node.js keretrendszer felhasználható webszerverek fejlesztésére a 'http' modul segítségével. Az alkalmazás történhet úgy, hogy meghallgassa az adott portot, és választ küldjön az ügyfélnek, amikor az alkalmazáshoz kérelmet nyújtanak be.
- A „kérés” modul felhasználható információk beszerzésére a weboldalakról. Az információk tartalmazzák az adott weboldalról kért weboldal teljes tartalmát.