Menu
CoddyTech

Altre route

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

Un sito ha più di una pagina, quindi il server ha bisogno di un percorso per ogni percorso URL.

app.get('/books', (req, res) => {
    res.send('12 books on the shelf');
});

app.get('/opening-hours', (req, res) => {
    res.send('Monday to Friday, 10 to 6');
});

Express legge il percorso di ogni richiesta e chiama il percorso corrispondente: GET /books raggiunge la prima funzione, GET /opening-hours la seconda. Se un percorso non ha una route, Express mostra la propria pagina 404. Il percorso di una route inizia sempre con /.

Recipe Box è tornato, con un file data.js che contiene quattro ricette e una route /recipes che ne elenca i titoli.

challenge icon

Sfida

Facile

Recipe Box ha bisogno di una pagina «About» accanto alla pagina iniziale e all’elenco delle ricette.

  1. In server.js, dove il commento dice // Add the /about page here., aggiungi una route per il percorso /about. Invia questa frase, punto finale incluso: Recipe Box collects family recipes.
  2. Lascia invariate le route / e /recipes.

Prova: premi «Esegui» e invia /about. Dovresti vedere Recipe Box collects family recipes. Invia /recipes: i quattro titoli delle ricette, uno per riga. Poi invia /about-us. Nessuna route ha quel percorso, quindi Express risponde con lo stato 404 e Cannot GET /about-us. L’elenco dei percorsi nella barra delle richieste mostra le route della tua app.

Provalo tu

import express from 'express';
import { recipes } from './data.js';

const app = express();

app.get('/', (req, res) => {
    res.send('Welcome to Recipe Box');
});

// type('text') invia testo semplice, quindi ogni titolo appare su una riga a sé.
app.get('/recipes', (req, res) => {
    res.type('text').send(recipes.map((recipe) => recipe.title).join('\n'));
});

// Aggiungi qui la pagina /about.

app.listen(3000, () => {
    console.log('Recipe Box is running on port 3000');
});

Tutte le lezioni di Fondamenti di Express

Esercitati da solo: Playground Express