In Express.js, routing არის გადამწყვეტი კონცეფცია, რომელიც საშუალებას გაძლევთ განსაზღვროთ, თუ როგორ ამუშავებს თქვენი აპლიკაცია მომხმარებლებისგან შემოსულ HTTP მოთხოვნებს. მარშრუტები საშუალებას გაძლევთ მიუთითოთ კონკრეტული ქმედებები, როდესაც მომხმარებლები აგზავნიან მოთხოვნებს თქვენს აპლიკაციაში კონკრეტულ URL-ებზე.
ნაბიჯი 1: საბაზისო შექმნა Route
route in- ის შესაქმნელად Express.js იყენებთ app.METHOD(PATH, HANDLER)
აპლიკაციის ობიექტის მეთოდს() კონკრეტული HTTP მეთოდისთვის METHOD და ბილიკის PATH app
დასარეგისტრირებლად. route HANDLER არის დამმუშავებლის ფუნქცია, რომელიც გამოიძახება, როდესაც მოთხოვნა მოხვდება მასზე route.
მაგალითად, შესაქმნელად route, რომელიც ამუშავებს GET
მოთხოვნას /hello
, შეგიძლიათ გამოიყენოთ შემდეგი კოდი:
app.get('/hello',(req, res) => {
res.send('Hello, this is the /hello route!');
});
ნაბიჯი 2: მოთხოვნებისა და პასუხების დამუშავება
req
დამმუშავებლის ფუნქციაში, თქვენ შეგიძლიათ დაამუშავოთ მომხმარებლების შემომავალი მოთხოვნები და უპასუხოთ(მოთხოვნა) და res
(პასუხი) ობიექტების გამოყენებით. ობიექტი req
შეიცავს ინფორმაციას შემომავალი მოთხოვნის შესახებ, როგორიცაა URL პარამეტრები, გაგზავნილი მონაცემები, გამგზავნის IP მისამართი და ა.შ. ობიექტი res
შეიცავს მოთხოვნაზე პასუხის მეთოდებს, როგორიცაა res.send()
, res.json()
, res.render()
და ა.შ.
ნაბიჯი 3: მრავალი მარშრუტის მართვა
Express.js საშუალებას გაძლევთ განსაზღვროთ მრავალი მარშრუტი ერთიდაიგივე URL-ისთვის სხვადასხვა HTTP მეთოდით. Მაგალითად:
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: დინამიური პარამეტრების მართვა
თქვენ ასევე შეგიძლიათ განსაზღვროთ მარშრუტები, რომლებიც შეიცავს დინამიურ პარამეტრებს, რომლებიც განსაზღვრულია ორწერტით( :
). Მაგალითად:
app.get('/users/:id',(req, res) => {
const userId = req.params.id;
res.send(`Hello, this is the GET /users/${userId} route!`);
});
როდესაც მომხმარებელი მიმართავს მოთხოვნას /users/123
, userId
ცვლადს ექნება მნიშვნელობა "123".
ნაბიჯი 5: გამოყოფა Routing მოდულებით
უფრო დიდ პროექტებში შეიძლება დაგჭირდეთ მარშრუტების გამოყოფა ცალკეულ ფაილებად, რათა შეინარჩუნოთ თქვენი წყაროს კოდი ორგანიზებული და მართვადი. შეგიძლიათ გამოიყენოთ module.exports
მარშრუტების განსაზღვრა ცალკეულ ფაილებში და შემდეგ შემოიტანოთ ისინი მთავარ ფაილში. Მაგალითად:
// 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: არარსებული მარშრუტების მართვა
და ბოლოს, თუ მომხმარებელი ითხოვს არარსებულს route, შეგიძლიათ განსაზღვროთ 404 route, რომ დამუშავდეს იგი. route ეს კეთდება თქვენი ძირითადი ფაილის ბოლოს ნაგულისხმევი დაყენებით:
app.use((req, res, next) => {
res.status(404).send('Route not found!');
});
ჩვენ ვისწავლეთ მარშრუტების შექმნა და მართვა Express.js. ამ ფუნქციის გამოყენებით, შეგიძლიათ მომხმარებლის მოთხოვნების მორგება და დამუშავება მოქნილად და ძლიერად, რაც თქვენს აპლიკაციას უფრო ადაპტირებულს და მასშტაბურს გახდის. განაგრძეთ მარშრუტების შესწავლა და გამოყენება მდიდარი და ფანტასტიკური ვებ აპლიკაციების შესაქმნელად!