Node.js Express FrameWork õpetus - õppige 10 minutiga

Lang L: none (table-of-contents):

Anonim

Selles õpetuses uurime Expressi raamistikku. See raamistik on üles ehitatud nii, et see toimib minimaalse ja paindliku veebirakenduse Node.js raamistikuna, pakkudes tugevat funktsioonikomplekti ühe- ja mitmeleheliste ning hübriidsete veebirakenduste loomiseks.

Selles õpetuses saate teada

  • Mis on Express.js?
  • Expressi installimine ja kasutamine
  • Mis on marsruudid?
  • Veebiserveri näidis, kasutades express.js

Mis on Express.js?

Express.js on Node js veebirakendusserveri raamistik, mis on spetsiaalselt loodud ühe-, mitmeleheliste ja hübriidsete veebirakenduste loomiseks.

Sellest on saanud node.js standard serveriraamistik. Express on selle osa, mida nimetatakse MEAN-i virnaks.

MEAN on tasuta ja avatud lähtekoodiga JavaScripti tarkvarapakett dünaamiliste veebisaitide ja veebirakenduste loomiseks, millel on järgmised komponendid;

1) MongoDB - tavaline NoSQL-i andmebaas

2) Express.js - vaikerakenduste raamistik

3) Angular.js - veebirakenduste jaoks kasutatav JavaScripti MVC raamistik

4) Node.js - skaleeritav serveripoolsete ja võrgurakenduste jaoks.

Express.js raamistiku abil on väga lihtne välja töötada rakendus, mida saab kasutada mitut tüüpi taotluste töötlemiseks, näiteks GET, PUT ning POST ja DELETE.

Expressi installimine ja kasutamine

Express installitakse Node Package Manageri kaudu. Seda saab teha käsureal järgmise rea käivitamisega

npm install express

Ülaltoodud käsk nõuab Node'i paketihaldurilt vajalike ekspressmoodulite allalaadimist ja vastavalt installimist.

Kasutame oma äsja installitud Expressi raamistikku ja loome lihtsa rakenduse "Hello World".

Meie rakendus loob lihtsa serverimooduli, mis kuulab pordi numbrit 3000. Kui meie näites esitatakse taotlus selle pordi numbri brauseri kaudu, saadab serverirakendus kliendile vastuse „Tere” maailm .

var express=require('express');var app=express();app.get('/',function(req,res){res.send('Hello World!');});var server=app.listen(3000,function() {});

Koodi selgitus:

  1. Esimeses koodireas kasutame funktsiooni nõuda "ekspressmooduli" kaasamiseks.
  2. Enne kui ekspressmoodulit kasutama hakata, peame sellest tegema objekti.
  3. Siin loome tagasihelistamisfunktsiooni. Seda funktsiooni kutsutakse alati, kui keegi sirvib meie veebirakenduse juur, mis on http: // localhost: 3000 . Tagasihelistamisfunktsiooni kasutatakse stringi "Hello World" saatmiseks veebisaidile.
  4. Tagasihelistamisfunktsioonis saadame kliendile stringi "Hello World" tagasi. Parameetrit 'res' kasutatakse sisu veebisaidile tagasi saatmiseks. See parameeter 'res' on see, mida pakub moodul 'request', mis võimaldab sisul veebilehele tagasi saata.
  5. Seejärel kasutame kuulamisfunktsiooni, et panna meie serverirakendus kuulama klientide taotlusi pordil nr 3000. Siit saate määrata mis tahes saadaoleva pordi.

Kui käsk käivitatakse edukalt, kuvatakse brauseris koodi käivitamisel järgmine väljund.

Väljund:

Väljundi põhjal

  • Näete selgelt, et kui sirvime kohaliku pordi URL-i porti 3000, näete lehel stringi "Tere maailm".
  • Kuna me oleme oma koodis maininud spetsiaalselt serveri jaoks porti nr 3000 kuulamiseks, on meil selle URL-i sirvimisel võimalik väljundit vaadata.

Mis on marsruudid?

Marsruut määrab viisi, kuidas rakendus reageerib konkreetse lõpp-punkti kliendi taotlusele.

Näiteks võib klient teha GET, POST, PUT või DELETE http päringu erinevatele URL-idele, näiteks allpool näidatutele;

http://localhost:3000/Bookshttp://localhost:3000/Students

Ülaltoodud näites

  • Kui esimese URL-i jaoks tehakse GET-päring, peaks ideaalis vastus olema raamatute loend.
  • Kui GET-taotlus esitatakse teise URL-i jaoks, peaks ideaalis vastus olema õpilaste loend.
  • Seega tuginetakse juurdepääsetavale URL-ile tuginedes veebiserveri teistsuguse funktsionaalsusega ja vastavalt sellele saadetakse vastus kliendile. See on marsruutimise mõiste.

Igal marsruudil võib olla üks või mitu käitlejafunktsiooni, mis täidetakse marsruudi sobitamisel.

Marsruudi üldine süntaks on toodud allpool

app.METHOD(PATH, HANDLER)

Kus

1) rakendus on ekspressmooduli eksemplar

2) METHOD on HTTP päringumeetod (GET, POST, PUT või DELETE)

3) PATH on tee serveris.

4) KÄSITLEJA on marsruudi sobitamisel täidetav funktsioon.

Vaatame näidet, kuidas saaksime ekspressis marsruute rakendada. Meie näide loob 3 marsruuti as

  1. A / sõlme marsruut, mis kuvab stringi "Juhend sõlmes", kui sellele marsruudile juurde pääsete
  2. A / Nurga marsruut, millel kuvatakse string "Tutorial on Angular", kui sellele marsruudile juurde pääsete
  3. Vaikimisi marsruut / mis kuvab stringi "Welcome to Guru99 Tutorials".

Meie põhikood jääb samaks eelmiste näidetega. Allolev koodilõik on lisandmoodul, mis näitab marsruutimise rakendamist.

var express = require('express');var app = express();app.route('/Node').get(function(req,res){res.send("Tutorial on Node");});app.route('/Angular').get(function(req,res){res.send("Tutorial on Angular");});app.get('/',function(req,res){res.send('Welcome to Guru99 Tutorials');}));

Koodi selgitus:

  1. Siin määratleme marsruudi, kui brauseris on valitud URL http: // localhost: 3000 / Node . Marsruudile lisame tagasihelistamisfunktsiooni, mida kutsutakse siis, kui sirvime sõlme URL-i.

    Funktsioonil on 2 parameetrit.

  • Peamine parameeter, mida kasutame, on parameeter 'res', mida saab kasutada kliendile teabe tagasi saatmiseks.
  • Parameetril „req” on teavet taotluse kohta. Mõnikord võib saadetava päringu osana saata täiendavaid parameetreid ja seega saab saadetavate täiendavate parameetrite leidmiseks kasutada parameetrit 'req'.
  1. Kasutame saatmisfunktsiooni, et saata string "Tutorial on Node" kliendile tagasi, kui on valitud Node marsruut.
  2. Siin määratleme marsruudi, kui brauseris on valitud URL http: // localhost: 3000 / Angular . Marsruudile lisame tagasihelistamisfunktsiooni, mida kutsutakse nurga URL-i sirvimisel.
  3. Kasutame saatmisfunktsiooni, et saata string "Tutorial on Angular" kliendile tagasi, kui valitud on Nurga marsruut.
  4. See on vaikimisi valitud marsruut, kui sirvitakse rakenduse marsruuti - http: // localhost: 3000 . Vaikimisi marsruudi valimisel saadetakse kliendile teade "Welcome to Guru99 Tutorials".

Kui käsk käivitatakse edukalt, kuvatakse brauseris koodi käivitamisel järgmine väljund.

Väljund:

Väljundi põhjal

  • Näete selgelt, et kui sirvime kohaliku pordi URL-i porti 3000, näete lehel kuvatavat stringi "Tere tulemast Guru99 õpetustesse".
  • Kuna oleme oma koodis maininud, et seda sõnumit kuvatakse meie vaike-URL-is.

Väljundi põhjal

  • Näete, et kui URL on muudetud nimeks / Node, valitakse vastav Node'i marsruut ja kuvatakse string "Tutorial On Node".

Väljundi põhjal

  • Näete, et kui URL on muudetud väärtusele / nurk, valitakse vastav sõlme marsruut ja kuvatakse string "Tutorial On Angular".

Veebiserveri näidis, kasutades express.js

Meie ülaltoodud näite põhjal oleme näinud, kuidas marsruudi põhjal otsustada, millist väljundit näidata. Sellist marsruutimist kasutatakse enamikus tänapäevastes veebirakendustes. Veebiserveri teine ​​osa on mallide kasutamine sõlmes js.

Kiirete lennusõlme Node-rakenduste loomisel on lihtne ja kiire viis kasutada rakenduse jaoks malle. Mallide valmistamiseks on turul palju raamistikke. Meie puhul võtame mallide jaoks näite jade raamistikust.

Jade installitakse sõlmpaketi halduri kaudu. Seda saab teha käsureal järgmise rea käivitamisega

npm installi jade

Ülaltoodud käsk nõuab Node'i paketihaldurilt vajalike jade-moodulite allalaadimist ja nende vastavalt installimist.

MÄRKUS . Node'i uusimas versioonis on jade aegunud. Selle asemel kasutage mopsi.

Kasutame oma äsja installitud jade raamistikku ja loome mõned põhimallid.

Samm 1) Esimene samm on luua jade mall. Looge fail nimega index.jade ja sisestage allolev kood. Veenduge, et loote faili kaustadesse "vaated"

  1. Siin täpsustame, et lehe pealkiri muudetakse mis tahes väärtusele, mis selle malli käivitamisel edastatakse.
  2. Samuti täpsustame, et päisemärgendi tekst asendatakse kõigega, mis jade-mallis edastatakse.

var express=require('express');var app=express();app.set('view engine','jade');app.get('/',function(req,res){res.render('index',{title:'Guru99',message:'Welcome'})});var server=app.listen(3000,function() {});

Koodi selgitus:

  1. Esimene asi, mida rakenduses täpsustada, on "vaate mootor", mida kasutatakse mallide renderdamiseks. Kuna kavatseme mallide renderdamiseks kasutada jade, täpsustame selle vastavalt.
  2. Renderdamisfunktsiooni kasutatakse veebilehe renderdamiseks. Meie näites renderdame varem loodud malli (index.jade).
  3. "Guru99" ja "Welcome" väärtused edastame vastavalt parameetritele "pealkiri" ja "sõnum". Need väärtused asendatakse mallis index.jade deklareeritud parameetritega „pealkiri” ja „sõnum”.

Kui käsk käivitatakse edukalt, kuvatakse brauseris koodi käivitamisel järgmine väljund.

Väljund:

Väljundi põhjal

  • Näeme, et lehe pealkirjaks määratakse "Guru99" ja lehe päiseks seatakse "Tere tulemast".
  • Selle põhjuseks on jade mall, mida meie sõlme js rakenduses kutsutakse.

Kokkuvõte

  • Ekspressraamistik on kõige tavalisem raamistik, mida kasutatakse Node js-rakenduste arendamisel. Ekspressraamistik on üles ehitatud node.js raamistiku peale ja aitab kiirelt jälgida serveripõhiseid rakendusi.
  • Marsruute kasutatakse kasutajate suunamiseks veebirakenduste erinevatesse osadesse vastavalt tehtud taotlusele. Iga marsruudi reaktsiooni saab varieerida sõltuvalt sellest, mida kasutajale tuleb näidata.
  • Malle saab kasutada sisu tõhusaks sisestamiseks. Nefriit on üks populaarsemaid mallimootoreid, mida Node.js rakendustes kasutatakse.