Routing στο Express.js: Χειρισμός αιτημάτων χρηστών

Το In Express.js, routing είναι μια κρίσιμη έννοια που σας επιτρέπει να ορίσετε πώς η εφαρμογή σας χειρίζεται τα εισερχόμενα αιτήματα HTTP από τους χρήστες. Οι διαδρομές σάς επιτρέπουν να καθορίσετε συγκεκριμένες ενέργειες όταν οι χρήστες στέλνουν αιτήματα σε συγκεκριμένες διευθύνσεις URL στην εφαρμογή σας.

Βήμα 1: Δημιουργία Βασικού Route

Για να δημιουργήσετε ένα route in Express.js, χρησιμοποιείτε τη app.METHOD(PATH, HANDLER) μέθοδο του αντικειμένου εφαρμογής( app) για να καταχωρίσετε ένα route για μια συγκεκριμένη μέθοδο HTTP METHOD και μια διαδρομή PATH. Ο ΧΕΙΡΙΣΤΗΣ είναι μια συνάρτηση χειριστή που θα καλείται όταν ένα αίτημα φτάσει σε αυτό 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. Χρησιμοποιώντας αυτήν τη δυνατότητα, μπορείτε να προσαρμόσετε και να χειρίζεστε τα αιτήματα των χρηστών με ευελιξία και δυναμική, κάνοντας την εφαρμογή σας πιο προσαρμόσιμη και επεκτάσιμη. Συνεχίστε να εξερευνάτε και να χρησιμοποιείτε διαδρομές για τη δημιουργία πλούσιων και φανταστικών διαδικτυακών εφαρμογών!