Tutorial Node.js Express.js FrameWork

⚡ Rezumat inteligent

Express.js este un framework minimalist pentru aplicații web Node.js care adaugă rutare, middleware și randare de șabloane la modulul HTTP principal, astfel încât aplicațiile cu o singură pagină, cu mai multe pagini și hibride ajung la un server funcțional în foarte puține linii.

  • 🔘 Rolul stivei MEAN: Express.js furnizează stratul backend alături de MongoDB, AngularJS și Node.js.
  • ☑️ Instalare: npm install express extrage framework-ul din Node Package Manager.
  • ✅ rutare: app.METHOD(CALE, HANDLER) mapează fiecare URL și un verb HTTP către un singur handler.
  • 🧪 Template-uri: app.set('view engine') plus res.render introduce date într-un fișier de vizualizare.
  • 🛠️ Formă modernă: Express 5 acceptă rutine de gestionare care returnează promisiuni și include express.json().
  • 📊 Notă privind versiunea: Jade a fost redenumit Pug, iar Node.js 24 este linia Active LTS.

Tutorial despre framework-ul Node.js Express.js

În acest tutorial, vom studia framework-ul Express. Acest framework este construit astfel încât să acționeze ca un framework de aplicații web Node.js minimal și flexibil, oferind un set robust de caracteristici pentru construirea de aplicații web cu o singură pagină, cu mai multe pagini și hibride.

Ce este Express.js?

Express.js este un framework de server pentru aplicații web Node.js, special conceput pentru construirea de aplicații web cu o singură pagină, cu mai multe pagini și hibride.

A devenit framework-ul standard de server pentru Node.js. Express este partea backend a ceea ce se numește stiva MEAN.

Rutare și middleware pentru straturi expres prin HTTP-ul Node.js de bază, fluxuri și API-uri pentru evenimente.

MEAN este un program gratuit și open-source JavaScenariu stivă de software pentru construirea de site-uri web dinamice și aplicații web care are următoarele componente;

1) MongoDB — Baza de date NoSQL standardă

2) Express.js — Framework-ul implicit pentru aplicații web

3) AngularJS - The JavaCadrul de script MVC utilizat pentru aplicații web

4) Node.js — Cadru de lucru utilizat pentru aplicații scalabile pe server și în rețea.

Cadrul Express.js facilitează dezvoltarea unei aplicații care poate fi utilizată pentru a gestiona mai multe tipuri de solicitări, cum ar fi cererile GET, PUT și POST și DELETE.

Instalarea și utilizarea Express

Express este instalat prin Node Package Manager. Acest lucru se poate face executând următoarea linie în linia de comandă

npm install express

Comanda de mai sus solicită Node Package Manager să descarce fișierul expres necesar module și instalați-le în consecință.

Notă privind versiunea: npm instalează acum Express 5.2; multe proiecte încă utilizează Express 4. Ambele rulează exemplele de mai jos pe un versiunea Node.js acceptată.

Să folosim cadrul Express nou instalat și să creăm o aplicație simplă „Hello World”.

Aplicația noastră va crea un simplu modul server care va asculta pe portul numărul 3000. În exemplul nostru, dacă o solicitare este făcută prin browser pe acest număr de port, atunci aplicația server va trimite un răspuns „Salut, lume” către client.

Codul serverului Express Hello World adnotat ascultă pe portul 3000

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

Code Explicaţie:

  1. În prima noastră linie de cod, folosim funcția require pentru a include „modulul expres”.
  2. Înainte de a începe să folosim modulul expres, trebuie să facem un obiect din acesta.
  3. Aici creăm o funcție de apel invers. Această funcție va fi apelată de fiecare dată când cineva navighează la rădăcina aplicației noastre web, care este http://localhost:3000. Funcția de apel invers va fi utilizată pentru a trimite șirul de caractere „Hello World” către pagina web.
  4. În funcția de apel invers, trimitem șirul „Hello World” înapoi către client. Parametrul „res” este folosit pentru a trimite conținut înapoi pe pagina web. Acest parametru „res” este furnizat de modulul „cerere” pentru a permite unuia să trimită conținut înapoi pe pagina web.
  5. Apoi folosim funcția listen pentru a face aplicația serverului nostru să asculte cererile clienților pe portul nr. 3000. Puteți specifica orice port disponibil aici.

Dacă comanda este executată cu succes, următoarea ieșire va fi afișată atunci când rulați codul în browser.

ieșire:

Browser care afișează mesajul „Hello World” returnat de serverul Express pe portul 3000

Din ieșire,

  • Puteți vedea clar că dacă navigați la URL al localhost pe portul 3000, veți vedea șirul „Hello World” afișat pe pagină.
  • Deoarece în codul nostru am menționat în mod specific ca serverul să asculte pe portul nr. 3000, putem vizualiza rezultatul atunci când navigăm către acesta. URL.

Ce sunt traseele?

O singură rută rădăcină este doar punctul de plecare.

Rutarea determină modul în care o aplicație răspunde la o solicitare a clientului către un anumit endpoint.

De exemplu, un client poate face o cerere http GET, POST, PUT sau DELETE pentru diverse URL cum ar fi cele prezentate mai jos;

http://localhost:3000/Books
http://localhost:3000/Students

În exemplul de mai sus,

  • Dacă se face o cerere GET pentru prima dată URL, atunci răspunsul ar trebui, în mod ideal, să fie o listă de cărți.
  • Dacă cererea GET este făcută pentru a doua URL, atunci răspunsul ar trebui să fie în mod ideal o listă de Studenți.
  • Deci, pe baza URL care este accesată, va fi invocată o funcționalitate diferită pe serverul web și, în consecință, răspunsul va fi trimis clientului. Acesta este conceptul de rutare.

Fiecare rută poate avea una sau mai multe funcții de gestionare, care sunt executate atunci când ruta este potrivită.

Sintaxa generală pentru o rută este prezentată mai jos

app.METHOD(PATH, HANDLER)

în care,

1) aplicația este o instanță a modulului expres

2) METHOD este o metodă de solicitare HTTP (GET, POST, PUT sau DELETE)

3) PATH este o cale pe server.

4) HANDLER este funcția executată atunci când ruta este potrivită.

Apel Cerere Scop
aplicație.get(CALE, HANDLER) GET Citiți
aplicație.post(CALE, HANDLER) POST Crează
aplicație.put(CALE, HANDLER) PUT Înlocui
app.delete(CALE, HANDLER) DELETE Elimină
aplicație.rută(CALE) Înlănțuit Gestionari de grup
aplicație.use(TRASPORT) Orice Mount middleware

⚠️ express 5 Note: Aceste semnături rămân neschimbate, dar app.del() a devenit app.delete(), res.sendfile() a devenit res.sendFile(), iar wildcard-urile au nevoie acum de nume precum /*splat.

Să vedem un exemplu despre cum putem implementa rute în Express. Exemplul nostru va crea 3 rute ca

  1. O rută /Node care va afișa șirul „Tutorial on Node” dacă această rută este accesată
  2. Un traseu /Angular care va afișa șirul „Tutorial on Angular” dacă este accesat acest traseu
  3. O rută implicită / care va afișa șirul „Bun venit la Guru99 de tutoriale.

Codul nostru de bază va rămâne același cu exemplele anterioare. Fragmentul de mai jos este un supliment pentru a prezenta modul în care este implementată rutarea.

Cod de rutare Express adnotat care definește rutele Node, Angular și implicite

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');
});

Code Explicaţie:

  1. Aici definim un traseu dacă URL http://localhost:3000/Node is selected in the browser. To the route, we are attaching a callback function which will be called when we browse to the Node URLFuncția are 2 parametri.
    • Parametrul principal pe care îl vom folosi este parametrul „res”, care poate fi folosit pentru a trimite informații înapoi către client.
    • Parametrul „req” conține informații despre cererea care se face. Uneori, parametrii suplimentari pot fi trimiși ca parte a cererii care se face și, prin urmare, parametrul „req” poate fi folosit pentru a găsi parametrii suplimentari trimiși.
  2. Folosim funcția de trimitere pentru a trimite șirul „Tutorial on Node” înapoi către client dacă este aleasă ruta Node.
  3. Aici definim un traseu dacă URL http://localhost:3000/Angular is selected in the browser. To the route, we are attaching a callback function which will be called when we browse to the Angular URL.
  4. Folosim funcția de trimitere pentru a trimite șirul „Tutorial on Angular” înapoi către client dacă este aleasă ruta Angular.
  5. Aceasta este ruta implicită aleasă atunci când se navighează la rădăcina aplicației — http://localhost:3000. Când este aleasă ruta implicită, apare mesajul „Bun venit la Guru„99 de tutoriale” vor fi trimise clientului.

Dacă comanda este executată cu succes, următoarea ieșire va fi afișată atunci când rulați codul în browser.

ieșire:

Browser care afișează Bine ați venit în Guru99 Tutoriale la ruta Express implicită

Din ieșire,

  • Puteți vedea clar că dacă navigați la URL din localhost pe portul 3000, veți vedea șirul de caractere „Bun venit la Guru99 de tutoriale afișate pe pagină.
  • Deoarece în codul nostru am menționat că implicit URL ar afișa acest mesaj.

Apoi, navigați la /Node.

Browser care afișează Tutorialul despre Nod returnat de ruta Node

Din ieșire,

  • Puteți vedea că dacă URL a fost schimbat în /Node, va fi aleasă ruta Nodului respectiv și va fi afișat șirul „Tutorial pe Nod”.

Apoi navigați la /Angular.

Browser care afișează Tutorialul despre Angular returnat de ruta Angular

Din ieșire,

  • Puteți vedea că dacă URL a fost schimbat în /Angular, ruta Nod respectivă va fi aleasă și se va afișa șirul „Tutorial on Angular”.

Exemplu de server web folosind express.js

Din exemplul de mai sus, am văzut cum putem decide ce ieșire să afișăm pe baza rutării. Acest tip de rutare este cel utilizat în majoritatea aplicațiilor web moderne. Cealaltă parte a unui server web se referă la utilizarea șabloanelor în Node.js.

Atunci când creați aplicații Node.js rapide și din mers, o modalitate ușoară și rapidă este utilizarea șabloanelor pentru aplicație. Există multe framework-uri disponibile pe piață pentru crearea de șabloane. În cazul nostru, vom lua exemplul framework-ului Jade pentru crearea de șabloane.

Jade se instalează prin intermediul Node Package Manager. Acest lucru se poate face executând următoarea linie în linia de comandă

npm instalează jade

Comanda de mai sus solicită Node Package Manager să descarce modulele Jade necesare și să le instaleze în consecință.

NOTĂ: În cea mai recentă versiune de Node, jade a fost depreciat. În schimb, folosește pug.

⚠️ Echivalent modern: instala mops, redenumiți index.jade în index.pug și setați app.set('view engine','pug'). Pachetul jade nu primește actualizări; pașii de mai jos se execută în continuare.

Să folosim framework-ul Jade nou instalat și să creăm câteva șabloane de bază.

Pas 1) Primul pas este să creați un șablon Jade. Creați un fișier numit index.jade și introduceți codul de mai jos. Asigurați-vă că creați fișierul în folderul „views”.

markup șablon index.jade cu substituenți pentru titlu și antet

  1. Aici specificăm că titlul paginii va fi schimbat la orice valoare care este transmisă atunci când acest șablon este invocat.
  2. De asemenea, specificăm că textul din eticheta antetului va fi înlocuit cu orice text este transmis în șablonul Jade.

Codul aplicației care îl redă urmează.

Cod Express adnotat care setează motorul de vizualizare Jade și indexul de randare

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() {});

Code Explicaţie:

  1. Primul lucru de specificat în aplicație este „motorul de vizualizare” care va fi utilizat pentru a reda șabloanele. Deoarece vom folosi Jade pentru a reda șabloanele noastre, specificăm acest lucru în mod corespunzător.
  2. Funcția de randare este utilizată pentru a reda o pagină web. În exemplul nostru, redăm șablonul (index.jade) care a fost creat mai devreme.
  3. Transmitem valorile „Guru99” și „Bun venit” la parametrii „title” și respectiv „message”. Aceste valori vor fi înlocuite de parametrii „title” și „message” declarați în șablonul index.jade.

Dacă comanda este executată cu succes, următoarea ieșire va fi afișată atunci când rulați codul în browser.

ieșire:

Browser redă șablonul Jade cu titlu Guru99 și antetul Bun venit

Din ieșire,

  • Putem vedea că titlul paginii este setat la „Guru99” și antetul paginii este setat la „Bun venit”.
  • Acest lucru se datorează șablonului Jade care este invocat în aplicația noastră Node.js.

Întrebări frecvente

middleware Funcțiile primesc req, res și next, apoi rulează în ordinea de înregistrare. Acestea gestionează jurnalizarea, analizarea corpului, autentificarea și erorile și fiecare trebuie să încheie răspunsul sau să apeleze next().

Nu. Express grupează parserele, așadar express.json() și express.urlencoded() înlocuiesc parserele separate analizor-corp dependență. Funcția helper combinată bodyParser() a fost eliminată, iar req.body rămâne nedefinită până când rulează un parser.

express 5 s-au făcut rutinele de gestionare conștiente de promisiuni, s-au eliminat app.del() și res.sendfile(), s-a îmbunătățit potrivirea căilor astfel încât wildcard-urile să aibă nevoie de nume precum /*splat și s-a setat urlencoded extended la false în mod implicit.

Pe Express 5, o promisiune respinsă trece automat la middleware-ul de gestionare a erorilor, astfel încât apelurile manuale next(err) dispar. Express 4 necesită un try/catch explicit în fiecare asincron. suna inapoi.

mopsJade a fost redenumit din motive legate de marca înregistrată, iar pachetul jade este depreciat. Șabloanele existente continuă să funcționeze după redenumirea lor în .pug și schimbarea motorului de vizualizare.

Node.js 24 este linia LTS activă în 2026, în timp ce Node.js 22 rămâne în întreținere, deci instala unul dintre acestea. Express 5 necesită Node.js 18 sau o versiune mai nouă.

Scanerele de învățare automată citesc definițiile rutelor și ordinea middleware-ului, apoi semnalează autentificarea lipsă, nevalidată JavaScenariu reguli CORS permisive și de intrare. Un evaluator uman confirmă în continuare fiecare constatare.

Copilotul GitHub și asistenți agenți similari generează fișiere de rută, middleware de validare și stub-uri de controler dintr-un singur prompt scurt. Fiecare rută generată are nevoie în continuare de de testare înainte de eliberare.

Rezumați această postare cu: