Sto iniziando con NodeJS ed Express 4 e sono un po 'confuso. Ho letto il sito Web Express, ma non riesco a vedere quando utilizzare un gestore di percorsi o quando utilizzare express.Router
.
Come ho potuto vedere, se voglio mostrare una pagina o qualcosa quando l'utente colpisce /show
ad esempio, dovrei usare:
var express = require('express')
var app = express()
app.get("/show", someFunction)
All'inizio, ho pensato che fosse vecchio (per Express 3). È giusto o è così anche per Express 4?
Se questo è il modo di farlo in Express 4, a cosa express.Router
serve?
Ho letto quasi lo stesso esempio di cui sopra ma usando express.Router
:
var express = require('express');
var router = express.Router();
router.get("/show", someFunction)
Quindi, qual è la differenza tra entrambi gli esempi?
Quale dovrei usare se voglio solo fare un semplice sito Web di test?
app.get(..)
sintassi è solo una scorciatoia per rendere il lavoro express.router
più conveniente. Se hai appena iniziato, non preoccuparti delle specifiche del router.
app's
propri metodi di routing, ad esempio app.get()
, siano sufficienti per le tue esigenze, utilizzali. È Router
lì solo per comodità per aiutarti a organizzare l'applicazione su più moduli. Dalla guida : " La express.Router
classe può essere utilizzata per creare gestori di percorsi modulari montabili. Router
Un'istanza è un sistema completo di routing e middleware; per questo motivo viene spesso definita" mini-app ". "
Router
non.listen()
per richieste da solo. È utile per separare la tua applicazione in più moduli, creandoRouter
in ciascuno quello cheapp
puòrequire()
e.use()
come middleware.