Express'te Yönlendirme ve Ara Yazılım Kılavuzu

Yönlendirme ve ara yazılım, web uygulamaları oluşturmak için Node.js ve Express çerçevesindeki iki önemli kavramdır.

Yönlendirme:

  • Yönlendirme, istemciden gelen isteklerin nasıl ele alınacağını ve sunucudaki karşılık gelen kaynaklarla nasıl yanıt verileceğini belirleme sürecidir.
  • Express'te, HTTP yöntemini (GET, POST, PUT, DELETE vb.) ve karşılık gelen URL yolunu belirterek rotaları tanımlayabiliriz.
  • Her rota, istek işleme, veritabanı erişimi ve istemciye yanıt gönderme gibi görevleri gerçekleştirmek için bir veya daha fazla işleyici işlevine sahip olabilir.

Ara yazılım:

  • Ara yazılım, istek son rota işleyicisine ulaşmadan önce sırayla yürütülen işlevlerdir.
  • Ortak işlevleri gerçekleştirmek ve kimlik doğrulama, günlüğe kaydetme, hata işleme vb. gibi ara görevleri gerçekleştirmek için kullanılırlar.
  • Middleware, uygulamanın tamamına uygulanabilir veya belirli rotalar için belirtilebilir.
  • Her ara yazılım, req (istek) ve res (yanıt) parametrelerini alır ve işlemeyi gerçekleştirebilir, isteği bir sonraki ara katman yazılımına iletebilir veya istemciye bir yanıt göndererek işlemeyi sonlandırabilir.

Express'te Routing ve Middleware'i birleştiren örnek:

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...');
});

loggerMiddlewareBu örnekte, sunucuya gelen her yeni isteği günlüğe kaydetmek için özel bir ara katman yazılımı tanımladık . Bu ara yazılım, yöntem kullanılarak tüm uygulamaya uygulanır app.use(). '/'Daha sonra biri ana sayfa ( ) ve diğeri hakkında sayfası ( ) için olmak üzere iki rota tanımladık '/about'. Son olarak sunucuyu başlatıp 3000 numaralı bağlantı noktasını dinliyoruz.

Ara yazılım loggerMiddlewareher istek için çalıştırılacak ve isteği sıradaki ilgili yol işleyicisine veya ara katman yazılımına iletmeden önce konsola bir mesaj kaydedecektir.

Yönlendirme ve ara yazılımın bu birleşimi, bir Express uygulamasında farklı istekleri işlememize ve ortak görevleri verimli bir şekilde gerçekleştirmemize olanak tanır.