Rýchly prehľad
- Čo je Middleware v Node.js?
- Čo je Body-Parser Middleware v Node.js?
- Ako používať Middleware na analýzu tela v Node.js?
- Záver
Začnime základmi middlewaru v Node.js.
Čo je Middleware v Node.js?
Middleware je funkcia, ktorá umožňuje prístup k požiadavke na objekt, odpovedi na objekt a vykonávaniu funkcie sekvenčným spôsobom posunom k ďalšej funkcii middleware v cykle žiadosti-odpoveď aplikácie. Poskytuje tiež prístup k úprave objektov požiadaviek a odpovedí na vykonávanie operácií, ako je overenie, analyzovanie požadujúcich orgánov a mnoho ďalších.
Čo je Body-Parser Middleware v Node.js?
' body-parser je middleware na analýzu tela, ktorý spravuje požiadavky HTTP POST. Požiadavka „POST“ odošle údaje na server, aby vytvoril alebo upravil zdroj. Middleware „bode-parser“ analyzuje telá prichádzajúcej požiadavky ako objekt JavaScript (ak je typ obsahu aplikácie JSON) a formulár HTML (ak je typ MIME application/x-www-form-urlencoded ). Akonáhle je to hotové, potom to môže byť použité v aplikácii.
Po získaní základov middlewaru analyzátora tela sa vrhneme na jeho použitie.
Ako používať Middleware na analýzu tela v Node.js?
Ak chcete použiť middleware body-parser v Node.js, postupujte podľa pokynov nižšie:
- Krok 1: Inicializujte projekt Node.js
- Krok 2: Nainštalujte Body Parser
- Krok 3: Nainštalujte Express a EJS
- Krok 4: Vytvorte šablónu EJS
- Krok 5: Použite Body Parser Middleware
- Krok 6: Nasaďte aplikáciu Node.js
Začnime s inicializáciou projektu Node.js.
Krok 1: Inicializujte projekt Node.js
Najprv inicializujte projekt Node.js vykonaním nižšie uvedeného „ npm (správca balíkov uzlov)” inicializačný príkaz:
npm init - aVo vyššie uvedenom príkaze „ -a' príznak sa používa na zodpovedanie všetkých otázok „áno“.
Výstup ukazuje, že „ package.json ” bol úspešne vytvorený súbor obsahujúci nasledujúcu sadu vlastností:
Krok 2: Nainštalujte Body Parser
Potom nainštalujte balík body-parser do aktuálnej aplikácie Node.js vykonaním nižšie uvedeného „ npm “príkaz inštalácie:
npm inštalačné telo - syntaktický analyzátorNasledujúci výstup ukazuje, že balík body-parser bol úspešne nainštalovaný v danej aplikácii Node.js:
Krok 3: Nainštalujte Express a EJS
Teraz nainštalujte „ nie (Embedded JavaScript Templating)” knižnica v aplikácii Node.js. „ejs“ je dobre známy JavaScriptový nástroj používaný Node.js, ktorý berie údaje HTML ako obyčajný JavaScript:
npm install ejsJe možné pozorovať, že knižnica „ejs“ bola pridaná do aktuálnej aplikácie Node.js:
Okrem toho nainštalujte „ expresné webové rámce na rýchle a jednoduché vytvorenie aplikácie Node.js:
npm install expressDo aplikácie Node.js bol pridaný aj výraz „express“:
Krok 4: Vytvorte šablónu EJS
Po nainštalovaní všetkých požadovaných balíkov vytvorte šablónu „ejs“ s nasledujúcimi riadkami kódu a uložte ju ako „ SampleForm.ejs súbor:
DOCTYPE html >< html >
< hlavu >
< titul > Telo - Analyzátor Middleware titul >
hlavu >
< telo >
< centrum >
< h1 > Vzorový denník h1 >
< formulárová akcia = 'uložiť dáta' metóda = 'POST' >
< pre >
< štítok > Názov : štítok < typ vstupu = 'text' názov = 'titul' > < br >
< štítok > Dátum štítok < typ vstupu = 'dátum' názov = 'dátum' < br >
< štítok > Dátum štítok < typ vstupu = 'dátum' názov = 'dátum' < br >
< typ vstupu = 'Predložiť' hodnotu = 'Odoslať denník' < br >
pre >
formulár >
centrum >
telo >
html >
Vysvetlenie vyššie uvedeného kódu je nasledovné:
- '
značka ” určuje názov dokumentu HTML. - '
” zarovná obsah do stredu webovej stránky. - ' ” vloží prvok nadpisu prvej úrovne.
- ' ” vytvára prvok formulára, ktorý zhromažďuje informácie od používateľa. Vo vnútri prvku „formulár“ je „ akcie atribút ” určuje akciu, ktorá sa vykoná pri odoslaní formulára a atribút ” metóda ” s hodnotou “post” odosiela dáta na server.
- '
” zobrazí špecifikované prvky na stránke s pevnou šírkou písma rovnakou ako v zdrojovom kóde. - ' <štítok> ” tag určuje označenie vstupného poľa.
- '
'type pridá vstupné pole typu' text “ a názov „ titul “. - Ďalšie dve značky „ “ pridávajú vstupné polia špecifikovaných typov a názvov.
Krok 5: Použite Body Parser Middleware
Teraz vytvorte súbor „.js“ s názvom „ index.js “ a použite v ňom middleware analýzy tela na analýzu tiel všetkých prichádzajúcich požiadaviek. Po vytvorení súboru „.js“ skopírujte doňho nasledujúce riadky kódu:
konšt bodyparser = vyžadovať ( 'body-parser' )konšt expresné = vyžadovať ( 'expresné' )
konšt cesta = vyžadovať ( 'cesta' )
konšt aplikácie = expresné ( )
nech PORT = proces. env . prístav || 8080
aplikácie. nastaviť ( 'názory' , cesta. pripojiť sa ( __dirname ) )
aplikácie. nastaviť ( 'zobrazovací nástroj' , 'nie' )
aplikácie. použitie ( bodyparser. urlencoded ( { predĺžený : pravda } ) )
aplikácie. použitie ( bodyparser. json ( ) )
aplikácie. dostať ( '/' , funkcia ( req, req ) {
res. vykresliť ( 'Vzorový formulár' )
} ) ;
aplikácie. príspevok ( '/uložiť dáta' , ( req, req ) => {
konzoly. log ( 'Používanie analyzátora tela: ' , req. telo )
} )
aplikácie. počúvaj ( PORT (PORT), funkcia ( chyba ) {
ak ( chyba ) hodiť chyba
konzoly. log ( 'Server vytvorený na PORT' , PORT )
} )
Vysvetlenie vyššie uvedených riadkov kódu je napísané nižšie:
- Po prvé, „ vyžadovať() ” importuje moduly “body-parser”, “express” a “path” do aktuálnej aplikácie Node.js.
- Ďalej vytvorte inštanciu expresnej aplikácie pomocou „ expresné() “konštruktér.
- Potom sa „ process.env ” vlastnosť spúšťa lokálny server na predvolenom nastavení “ PORT “. Ak je predvolený port zaneprázdnený, server sa spustí na zadanom porte, ktorý je „ 8080 “.
- Teraz nastavte zobrazovací mechanizmus pomocou špecifikovaného middlewaru, v ktorom „views“ označuje priečinok, kde sú uložené všetky webové stránky a „ path.join() ” spája segmenty cesty aktuálneho adresára a vytvára jednu cestu.
- Keď je všetko hotové, „ app.use() “metóda vkladá zadaný “ body-parser ” middleware na danej ceste. Tento middleware analýzy tela používa „ urlencoded ” analyzátor, ktorý analyzuje iba „urlencoded“ telá, ktorých hlavička „content-type“ sa zhoduje s možnosťou „type“.
- Druhý „analyzátor tela“ používa „ JSON ” na analýzu tiel prichádzajúcich požiadaviek ako objektu JSON vo formáte kľúč – hodnota.
- ' app.get() ” odošle HTTP požiadavku “GET” na zadanú cestu a vykoná funkciu spätného volania s “ req (žiadosť)“ a „ res (odpovedať)“.
- Vo vnútri funkcie spätného volania je „ res.render() ” metóda vykreslí odpoveď, keď sa vykoná zadaná funkcia spätného volania.
- Metóda „app.post()“ odošle HTTP požiadavku „POST“, ktorá je bezpečnejšia, pretože nezobrazuje údaje v adrese URL. Definuje tiež funkciu spätného volania, ktorá používa „ req.body ” na získanie údajov zo vstupných polí.
- Nakoniec, „ app.listen() ” vytvára spojenie na zadanom porte a definuje funkciu spätného volania. V tejto funkcii sa „ ak Príkaz ” vyvolá chybu, ak sa vyskytne počas vykonávania programu, a príkaz “ console.log() ” zobrazí potvrdenie na konzole.
Krok 6: Nasaďte aplikáciu Node.js
Nakoniec nasaďte aplikáciu Node.js pomocou „ uzol ” kľúčové slovo takto:
index uzla. js
Po vykonaní vyššie uvedeného príkazu sa zobrazí potvrdzujúca správa, že server bol úspešne vytvorený na zadanom porte:
Teraz navštívte nasledujúcu adresu URL http://localhost:8080 zobraziť Vzorový denník. Na webovej stránke „Sample Diary“ vyplňte všetky vstupné polia a kliknite na „ Odoslať denník ” tlačidlo na uloženie obsahu:
Je možné pozorovať, že po odoslaní informácií terminál automaticky zobrazí všetky telá prvkov HTML použitých vo „Vzorovom denníku“ ako objekt JSON:
To je všetko o používaní midlvéru analýzy tela v Node.js.
Záver
Ak chcete použiť „ body-parser “ v Node.js použite „ urlencoded “ a „ JSON ” analyzátory, ktoré analyzujú telo všetkých prichádzajúcich požiadaviek a zobrazujú ich ako objekt JSON. Spracováva telá požiadaviek „POST“ a analyzuje ich, aby získal obsah všetkých prvkov použitých v dokumente HTML. Poskytuje jednoduchý a najjednoduchší spôsob spracovania dátumu odoslaného telom prichádzajúcej HTTP požiadavky. Tento príspevok prakticky demonštroval použitie midlvéru analýzy tela v Node.js.