Cos'è Express

Cos'è Express

Di Juliet Maingi


javascript framework js node.js

Express è un framework web veloce, semplice e minimalista per Node.js. Scopri a cosa serve e come installarlo.

Cos'è e a cosa serve Express.js

Express.js è un framework open source per Node.js. È stato progettato per creare applicazioni web e API. È un framework dinamico, altamente flessibile, leggero e veloce.

Inoltre è uno dei framework più popolari e più diffusi, consente agli sviluppatori di customizzare l’applicazione e di gestirla attraverso l'utilizzo di rotte e middleware. Fornisce supporto per il pattern MVC per diversi template engine (come ejs, pug e handlebars), per estensioni che ne aumentano le funzionalità e per le operazioni di debug.

In pratica Express.js serve a non reinventare la ruota, riduce gli sprechi di tempo nella gestione e nella codifica delle logiche standard lasciando spazio alle funzioni più o meno complesse che caratterizzano l'applicazione.

Express è anche un componente back-end fondamentale per le applicazioni stack MEAN, MERN e MEVN. Questi tre stack permettono di creare un’applicazione completa (front end, back end, database) utilizzando interamente Javascript e JSON.

L'acronimo MEAN sta per MongoDB, Express, Angularjs e Node. MERN è una variazione che sostituisce Angular con React e MEVN con Vue.

Alternative

Oltre ad Express.js esistono altri framework per lo sviluppo di applicazioni web lato server con Node.js, ecco qualche esempio:

  • Adonis
  • Koa
  • Sails.js
  • Next.js con React

Come installare Express.js

Premessa: Express.js richiede Node.js, puoi consultare la guida introduttiva a Node in caso non l’avessi già installato. Segui i seguenti passaggi per procedere con l’installazione di Express.

  1. Apri il terminale, crea e accedi alla cartella in cui conservare l’applicazione.

$ cd mkdir nuova_cartella

$ cd /nuova_cartella

  1. Utilizza il comando npm init per creare un file package.json per l’applicazione.

$ npm init -y

-y sta per yes e permette di accettare i valori di default senza dover passare attraverso il processo interattivo.

  1. Per installare Express.js utilizza il comando seguente:

$ npm install --save express

Se vuoi installare momentaneamente Express e non aggiungerlo all’elenco di dipendenze, ometti --save.

Puoi trovare la documentazione di Express.js sul sito ufficiale o nella repository di GitHub.

Come funziona Express

Express è un framework di routing e middleware; il funzionamento di un’applicazione Express in sostanza si basa su due concetti: rotte e funzioni middleware.

Routing

Quando un utente invia una richiesta dal proprio browser digitando l'indirizzo di un sito Web il browser invia una richiesta HTTP all'applicazione/server.

Il server riceverà la richiesta attraverso una rotta, la elaborerà e invierà una risposta.

Le rotte servono a determinare come un’applicazione risponde a una richiesta, la loro struttura è composta da un metodo di richiesta HTTP specifico (GET, POST, PUT, DELETE e così via), un URI (o percorso) e una o più funzioni che verranno eseguite in corrispondenza della rotta.

Middleware

I middleware sono funzioni che vengono eseguite durante il ciclo richiesta-risposta del server, servono a controllare e filtrare le richieste HTTP che arrivano all'applicazione.

Le funzioni middleware hanno accesso sia alla richiesta che alla risposta e in genere vengono utilizzate per le seguenti attività:

  • Eseguire una porzione di codice.
  • Apportare modifiche agli oggetti richiesta e risposta.
  • Terminare il ciclo richiesta-risposta.
  • Chiamare il middleware successivo

Nelle applicazione Express, per chiamare la funzione middleware successiva è necessario utilizzare la funzione next() se non viene inviata una risposta, altrimenti la richiesta verrà lasciata in sospeso.

Un esempio comune dell'utilizzo del middleware è la gestione delle sessioni utente, gli sviluppatori possono utilizzare le funzioni middleware per verificare se un utente è loggato o non loggato.

Tutorial Express.js

In questo tutorial creeremo un semplice server Express.js che ascolterà le richieste in arrivo su http://localhost:3000/ e restituirà una risposta.

Creare un server con Express

Una volta installato Express.js, creiamo un nuovo file "index.js" e iniziamo.

//importiamo express

const express = require("express");

const app = express();

const port = 3000;



//Creiamo una rotta

app.get("/", (req, res, next) => {

  //invio risposta

  res.send('<h1>Ho creato un server con Express.js</h1>');

});



//Mettiamo il server in ascolto

app.listen(port, () => {

  console.log(`Server is running on http://localhost:${port}`);

});

Per avviare il server apri il terminale e digita il seguente comando:

$ node index.js

Congratulazioni, hai appena creato il tuo primo server con Express.js!

Nel terminale dovresti leggere "Server is running on http://localhost:3000". Clicca sul link per inviare la tua prima richiesta al server e per vedere la risposta.

Impara a programmare in 3 mesi con il Corso di Coding Hackademy su Laravel PHP

Diventa Sviluppatore web in 3 mesi

Scopri il coding bootcamp Hackademy

Programma Completo