Menu
CoddyTech

Il modulo http

Fa parte della sezione Fondamenti di Express del percorso Node.js di Coddy. Lezione 2 di 23.

Express svolge per te un lavoro che non puoi vedere. Lo mostra il modulo node:http di Node, su cui è basato Express.

import http from 'node:http';

const server = http.createServer((req, res) => {
    if (req.url === '/repairs') {
        res.statusCode = 503;
        res.end('Repairs are closed today');
        return;
    }
    res.end('Welcome to the bike shop');
});

server.listen(3000);

Node chiama la funzione per ogni richiesta. Non ci sono rotte: devi confrontare tu req.url, il percorso richiesto. res.statusCode è il codice di stato, un numero che indica com’è andata: 200 significa OK, 404 significa non trovato. res.end invia il corpo e conclude la risposta, quindi imposta lo stato prima di chiamarlo.

challenge icon

Sfida

Facile

Prima di proseguire con Express, scrivi un piccolo server con il modulo node:http integrato in Node, per vedere il lavoro che Express fa per te.

  1. In server.js, all'interno della funzione passata a http.createServer, controlla req.url. Quando è /, invia il testo Home.
  2. Per tutti gli altri percorsi, imposta il codice di stato su 404 e invia il testo Not found. Imposta lo stato prima di inviare. Una volta terminata la risposta, il suo stato non può più essere modificato.

Prova: premi Run e invia /. Dovresti vedere Home con stato 200. Invia /nope, poi /recipes/today. Entrambi dovrebbero mostrare Not found con stato 404. Nella lezione 1, Express ha inviato questo 404 per te; qui lo scrivi tu.

Provalo tu

import http from 'node:http';

const server = http.createServer((req, res) => {
    // Rispondi a / con Home e a ogni altro percorso con 404 Not found.
    res.end('Hello from Node');
});

server.listen(3000, () => {
    console.log('Listening on port 3000');
});
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti di Express

Esercitati da solo: Playground Express