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.
Sfida
FacilePrima 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.
- In
server.js, all'interno della funzione passata ahttp.createServer, controllareq.url. Quando è/, invia il testoHome. - 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');
});
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