, yra labai svarbi koncepcija, leidžianti apibrėžti, kaip jūsų programa apdoroja gaunamas vartotojų HTTP užklausas Express.js. routing Maršrutai leidžia nurodyti konkrečius veiksmus, kai vartotojai siunčia užklausas konkrečiais jūsų programos URL.
1 veiksmas: pagrindinio elemento kūrimas Route
Norėdami sukurti route į Express.js, naudokite app.METHOD(PATH, HANDLER)
programos objekto metodą( app
), kad užregistruotumėte route konkrečiam HTTP metodui METHOD ir kelio PATH. HANDLER yra tvarkyklės funkcija, kuri bus iškviesta, kai užklausa pasiekia tą route.
Pavyzdžiui, norėdami sukurti užklausą route, kuri apdoroja, galite naudoti šį kodą: GET
/hello
app.get('/hello',(req, res) => {
res.send('Hello, this is the /hello route!');
});
2 veiksmas: užklausų ir atsakymų tvarkymas
Naudodamiesi tvarkyklės funkcija, galite tvarkyti gaunamas vartotojų užklausas ir atsakyti naudodami objektus req
(užklausa) ir res
(atsakymas). Objekte req
yra informacija apie gaunamą užklausą, pvz., URL parametrai, išsiųsti duomenys, siuntėjo IP adresas ir kt. Objekte res
yra atsakymo į užklausą metodai, pvz. res.send()
, res.json()
, , res.render()
, ir kt.
3 veiksmas: kelių maršrutų valdymas
Express.js leidžia apibrėžti kelis maršrutus tam pačiam URL naudojant skirtingus HTTP metodus. Pavyzdžiui:
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!');
});
4 veiksmas: dinaminių parametrų tvarkymas
Taip pat galite apibrėžti maršrutus, kuriuose yra dinaminių parametrų, apibrėžtų dvitaškiu( :
). Pavyzdžiui:
app.get('/users/:id',(req, res) => {
const userId = req.params.id;
res.send(`Hello, this is the GET /users/${userId} route!`);
});
Kai vartotojas pateikia užklausą /users/123
, userId
kintamasis turės reikšmę "123".
5 veiksmas: atskirkite Routing moduliais
Didesniuose projektuose galbūt norėsite atskirti maršrutus į atskirus failus, kad šaltinio kodas būtų tvarkingas ir valdomas. Galite naudoti module.exports
norėdami apibrėžti maršrutus atskiruose failuose ir importuoti juos į pagrindinį failą. Pavyzdžiui:
// 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);
6 veiksmas: neegzistuojančių maršrutų tvarkymas
Galiausiai, jei vartotojas prašo neegzistuojančio route, galite nustatyti 404 route, kad jis būtų tvarkomas. route Tai atliekama pagrindinio failo pabaigoje nustatant numatytuosius nustatymus:
app.use((req, res, next) => {
res.status(404).send('Route not found!');
});
Išmokome kurti ir tvarkyti maršrutus Express.js. Naudodami šią funkciją galite lanksčiai ir efektyviai tinkinti ir tvarkyti vartotojų užklausas, todėl jūsų programa tampa labiau pritaikoma ir keičiama. Toliau tyrinėkite ir naudokitės maršrutais kurdami turtingas ir fantastiškas žiniatinklio programas!