Routing u Express.js: Rukovanje korisničkim zahtjevima

U Express.js, routing je ključni koncept koji vam omogućuje da definirate kako vaša aplikacija obrađuje dolazne HTTP zahtjeve korisnika. Rute vam omogućuju da odredite određene radnje kada korisnici šalju zahtjeve na određene URL-ove u vašoj aplikaciji.

Korak 1: Stvaranje osnovnog Route

Za kreiranje u route, Express.js koristite app.METHOD(PATH, HANDLER) metodu aplikacijskog objekta( app) za registraciju route za specifičnu HTTP metodu METHOD i stazu PATH. HANDLER je funkcija rukovatelja koja će biti pozvana kada zahtjev pogodi taj route.

Na primjer, da biste stvorili route koji obrađuje GET zahtjev za /hello, možete koristiti sljedeći kod:

app.get('/hello',(req, res) => {  
  res.send('Hello, this is the /hello route!');  
});  

Korak 2: Obrada zahtjeva i odgovora

U funkciji rukovatelja možete rukovati dolaznim zahtjevima korisnika i odgovoriti pomoću objekata req(zahtjev) i res(odgovor). Objekt req sadrži informacije o dolaznom zahtjevu, kao što su URL parametri, poslani podaci, IP adresa pošiljatelja itd. Objekt res sadrži metode za odgovor na zahtjev, kao što su res.send(), res.json(), res.render() itd.

Korak 3: Rukovanje više ruta

Express.js omogućuje vam definiranje više ruta za isti URL s različitim HTTP metodama. Na primjer:

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!');  
});  

Korak 4: Rukovanje dinamičkim parametrima

Također možete definirati rute koje sadrže dinamičke parametre, definirane dvotočkom( :). Na primjer:

app.get('/users/:id',(req, res) => {  
  const userId = req.params.id;  
  res.send(`Hello, this is the GET /users/${userId} route!`);  
});  

Kada korisnik uputi zahtjev za /users/123, userId varijabla će imati vrijednost "123".

Korak 5: Odvojite Routing module

U većim projektima možda ćete htjeti odvojiti rute u zasebne datoteke kako bi vaš izvorni kod bio organiziran i njime se moglo upravljati. Možete koristiti module.exports za definiranje ruta u zasebnim datotekama i zatim ih uvesti u glavnu datoteku. Na primjer:

// 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);  

Korak 6: Rukovanje nepostojećim rutama

Konačno, ako korisnik zatraži nepostojeći route, možete definirati 404 route da biste to obradili. To se postiže postavljanjem zadane vrijednosti route na kraju vaše glavne datoteke:

app.use((req, res, next) => {  
  res.status(404).send('Route not found!');  
});  

Naučili smo kako kreirati i rukovati rutama u Express.js. Korištenjem ove značajke možete prilagoditi zahtjeve korisnika i rukovati njima fleksibilno i snažno, čineći svoju aplikaciju prilagodljivijom i skalabilnijom. Nastavite istraživati ​​i koristiti rute u izgradnji bogatih i fantastičnih web aplikacija!