Panduan Perutean dan Middleware di Express

Routing dan middleware adalah dua konsep penting dalam Node.js dan framework Express untuk membangun aplikasi web.

Rute:

  • Routing adalah proses menentukan cara menangani permintaan dari klien dan merespons dengan sumber daya yang sesuai di server.
  • Di Express, kita dapat menentukan rute dengan menentukan metode HTTP (GET, POST, PUT, DELETE, dll.) dan jalur URL yang sesuai.
  • Setiap rute dapat memiliki satu atau lebih fungsi penangan untuk melakukan tugas-tugas seperti pemrosesan permintaan, akses basis data, dan pengiriman respons ke klien.

Peralatan menengah:

  • Middleware adalah fungsi yang dijalankan secara berurutan sebelum permintaan mencapai pengendali rute akhir.
  • Mereka digunakan untuk melakukan fungsi umum dan menangani tugas perantara seperti otentikasi, logging, penanganan kesalahan, dll.
  • Middleware dapat diterapkan ke seluruh aplikasi atau ditentukan untuk rute tertentu.
  • Setiap middleware menerima parameter req (request) dan res (response) dan dapat melakukan pemrosesan, meneruskan permintaan ke middleware berikutnya, atau mengakhiri pemrosesan dengan mengirimkan respons ke klien.

Contoh menggabungkan Routing dan Middleware di Express:

const express = require('express');
const app = express();

// Middleware
const loggerMiddleware = (req, res, next) => {
  console.log('A new request has arrived!');
  next();
};

// Apply middleware to the entire application
app.use(loggerMiddleware);

// Main route
app.get('/', (req, res) => {
  res.send('Welcome to the homepage!');
});

// Another route
app.get('/about', (req, res) => {
  res.send('This is the about page!');
});

// Start the server
app.listen(3000, () => {
  console.log('Server is listening on port 3000...');
});

Dalam contoh ini, kami telah menetapkan middleware khusus loggerMiddlewareuntuk mencatat setiap permintaan baru yang datang ke server. Middleware ini diterapkan ke seluruh aplikasi menggunakan app.use()metode tersebut. Kemudian, kami telah menetapkan dua rute, satu untuk halaman utama ( '/') dan satu lagi untuk halaman tentang ( '/about'). Terakhir, kami memulai server dan mendengarkan di port 3000.

Middleware loggerMiddlewareakan dieksekusi untuk setiap permintaan, mencatat pesan ke konsol sebelum meneruskan permintaan ke pengendali rute atau middleware yang sesuai secara berurutan.

Kombinasi perutean dan middleware ini memungkinkan kami menangani berbagai permintaan dan melakukan tugas umum secara efisien dalam aplikasi Express.