In Express.js is routing een cruciaal concept waarmee u kunt definiëren hoe uw applicatie omgaat met inkomende HTTP-verzoeken van gebruikers. Met routes kunt u specifieke acties opgeven wanneer gebruikers verzoeken naar specifieke URL's in uw toepassing sturen.
Stap 1: een basis maken Route
Om een route in te maken Express.js, gebruikt u de app.METHOD(PATH, HANDLER)
methode van het toepassingsobject() om een voor een specifieke HTTP-methode METHODE en een pad PATH te app
registreren. route De HANDLER is een handlerfunctie die wordt aangeroepen wanneer een verzoek dat bereikt route.
Om bijvoorbeeld een te maken route die een GET
verzoek aan afhandelt /hello
, kunt u de volgende code gebruiken:
app.get('/hello',(req, res) => {
res.send('Hello, this is the /hello route!');
});
Stap 2: Verzoeken en antwoorden afhandelen
In de handlerfunctie kunt u inkomende verzoeken van gebruikers afhandelen en reageren met behulp van de objecten req
(verzoek) en(antwoord). res
Het req
object bevat informatie over het inkomende verzoek, zoals URL-parameters, verzonden gegevens, het IP-adres van de afzender, enz. Het res
object bevat methoden om op het verzoek te reageren, zoals res.send()
, res.json()
, res.render()
, enz.
Stap 3: meerdere routes afhandelen
Express.js stelt u in staat om meerdere routes te definiëren voor dezelfde URL met verschillende HTTP-methoden. Bijvoorbeeld:
app.get('/hello',(req, res) => {
res.send('Hello, this is the GET /hello route!');
});
app.post('/hello',(req, res) => {
res.send('Hello, this is the POST /hello route!');
});
Stap 4: Omgaan met dynamische parameters
U kunt ook routes definiëren die dynamische parameters bevatten, gedefinieerd door een dubbele punt( :
). Bijvoorbeeld:
app.get('/users/:id',(req, res) => {
const userId = req.params.id;
res.send(`Hello, this is the GET /users/${userId} route!`);
});
Wanneer een gebruiker een verzoek doet aan /users/123
, userId
heeft de variabele de waarde "123".
Stap 5: Scheid Routing met module
In grotere projecten wilt u misschien routes scheiden in afzonderlijke bestanden om uw broncode georganiseerd en beheersbaar te houden. U kunt gebruiken module.exports
om routes in afzonderlijke bestanden te definiëren en deze vervolgens in het hoofdbestand te importeren. Bijvoorbeeld:
// routes/users.js
const express = require('express');
const router = express.Router();
router.get('/profile',(req, res) => {
res.send('This is the /profile route in users.js!');
});
module.exports = router;
// app.js
const usersRouter = require('./routes/users');
app.use('/users', usersRouter);
Stap 6: omgaan met niet-bestaande routes
Ten slotte, als een gebruiker een non-existent aanvraagt route, kunt u een 404 definiëren route om dit af te handelen. Dit doet u door een standaardinstelling in te stellen route aan het einde van uw hoofdbestand:
app.use((req, res, next) => {
res.status(404).send('Route not found!');
});
We hebben geleerd hoe we routes in Express.js. Door deze functie te gebruiken, kunt u gebruikersverzoeken flexibel en krachtig aanpassen en afhandelen, waardoor uw applicatie flexibeler en schaalbaarder wordt. Blijf routes verkennen en gebruiken bij het bouwen van rijke en fantastische webapplicaties!