W Express.js, routing to kluczowa koncepcja, która pozwala zdefiniować, w jaki sposób aplikacja obsługuje przychodzące żądania HTTP od użytkowników. Trasy umożliwiają określenie określonych akcji, gdy użytkownicy wysyłają żądania do określonych adresów URL w Twojej aplikacji.
Krok 1: Tworzenie Basica Route
Aby utworzyć route in Express.js, użyj app.METHOD(PATH, HANDLER)
metody obiektu aplikacji( app
), aby zarejestrować METODĘ route dla określonej metody HTTP i ścieżkę PATH. HANDLER to funkcja obsługi, która zostanie wywołana, gdy żądanie trafi w ten route.
Na przykład, aby utworzyć route program obsługujący GET
żądanie do /hello
, możesz użyć następującego kodu:
app.get('/hello',(req, res) => {
res.send('Hello, this is the /hello route!');
});
Krok 2: Obsługa próśb i odpowiedzi
W funkcji obsługi można obsługiwać żądania przychodzące od użytkowników i odpowiadać za pomocą obiektów req
(żądanie) i res
(odpowiedź). Obiekt req
zawiera informacje o przychodzącym żądaniu, takie jak parametry adresu URL, przesłane dane, adres IP nadawcy itp. Obiekt res
zawiera metody odpowiedzi na żądanie, takie jak res.send()
, res.json()
, res.render()
, itp.
Krok 3: Obsługa wielu tras
Express.js umożliwia zdefiniowanie wielu tras dla tego samego adresu URL przy użyciu różnych metod HTTP. Na przykład:
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!');
});
Krok 4: Obsługa parametrów dynamicznych
Można również zdefiniować trasy, które zawierają parametry dynamiczne, zdefiniowane przez dwukropek( :
). Na przykład:
app.get('/users/:id',(req, res) => {
const userId = req.params.id;
res.send(`Hello, this is the GET /users/${userId} route!`);
});
Gdy użytkownik wyśle żądanie do /users/123
, userId
zmienna będzie miała wartość „123”.
Krok 5: Oddziel Routing modułami
W większych projektach możesz chcieć podzielić trasy na osobne pliki, aby utrzymać porządek w kodzie źródłowym i ułatwić zarządzanie nim. Możesz użyć module.exports
do zdefiniowania tras w oddzielnych plikach, a następnie zaimportować je do pliku głównego. Na przykład:
// 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);
Krok 6: Obsługa nieistniejących tras
Wreszcie, jeśli użytkownik poprosi o nieistniejący plik route, możesz zdefiniować 404, route aby go obsłużyć. Odbywa się to poprzez ustawienie wartości domyślnej route na końcu głównego pliku:
app.use((req, res, next) => {
res.status(404).send('Route not found!');
});
Nauczyliśmy się tworzyć i obsługiwać trasy w Express.js. Korzystając z tej funkcji, możesz elastycznie i wydajnie dostosowywać i obsługiwać żądania użytkowników, dzięki czemu Twoja aplikacja jest bardziej elastyczna i skalowalna. Kontynuuj odkrywanie i wykorzystywanie tras w tworzeniu bogatych i fantastycznych aplikacji internetowych!