Routing ใน Express.js: การจัดการคำขอของผู้ใช้

ใน เป็นแนวคิดสำคัญที่ช่วยให้คุณกำหนดวิธีที่แอปพลิเคชันของคุณจัดการกับคำขอ HTTP ที่เข้ามาจากผู้ Express.js ใช้ routing เส้นทางทำให้คุณสามารถระบุการดำเนินการเฉพาะเมื่อผู้ใช้ส่งคำขอไปยัง URL เฉพาะบนแอปพลิเคชันของคุณ

ขั้นตอนที่ 1: การสร้างพื้นฐาน Route

ในการสร้าง route in Express.js ให้ใช้ app.METHOD(PATH, HANDLER) method ของ application object( app) เพื่อลงทะเบียน a route สำหรับ HTTP method METHOD และพาธ PATH 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. เมื่อใช้คุณลักษณะนี้ คุณสามารถปรับแต่งและจัดการคำขอของผู้ใช้ได้อย่างยืดหยุ่นและมีประสิทธิภาพ ทำให้แอปพลิเคชันของคุณสามารถปรับเปลี่ยนและปรับขนาดได้มากขึ้น สำรวจและใช้เส้นทางต่อไปเพื่อสร้างเว็บแอปพลิเคชันที่สมบูรณ์และยอดเยี่ยม!