Routing in Express.js: მომხმარებლის მოთხოვნების დამუშავება

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. ამ ფუნქციის გამოყენებით, შეგიძლიათ მომხმარებლის მოთხოვნების მორგება და დამუშავება მოქნილად და ძლიერად, რაც თქვენს აპლიკაციას უფრო ადაპტირებულს და მასშტაბურს გახდის. განაგრძეთ მარშრუტების შესწავლა და გამოყენება მდიდარი და ფანტასტიკური ვებ აპლიკაციების შესაქმნელად!