ExpressJS

ExpressJS Middleware

Herkese merhaba, ExpressJS yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda ExpressJS’de middleware nedir, nasıl yazılır gibi konuları anlatacağım. Hadi başlayalım !

Express.js, web uygulamaları oluşturmak için sıklıkla kullanılan bir Node.js çerçevesidir. Express.js, kolay ve hızlı bir şekilde HTTP sunucusu oluşturmanıza olanak sağlar ve HTTP isteklerini ve yanıtlarını kolayca yönetmenizi sağlar. Middleware, Express.js’in en güçlü özelliklerinden biridir. Bu makalede, Express.js middleware’lerini ne olduğunu, nasıl kullanılacağını ve middleware yazmanın nasıl çalıştığını örneklerle anlatacağım.

Express.js Middleware Nedir?

Express.js middleware’leri, HTTP istekleri ve yanıtlarının işlenmesini sağlayan ara yazılımlardır. Middleware’ler, bir HTTP isteğinin aldığı yolda işlem yapar ve istekten önce veya sonra gerekli değişiklikleri yapabilir. Middleware’ler, uygulamanın herhangi bir noktasında kullanılabilir ve istek veya yanıtın tamamını, sadece bir kısmını veya hiçbirini değiştirebilirler.

Middleware’ler, uygulama ayarları, güvenlik önlemleri, günlük tutma, oturum yönetimi, hata işleme, vs. gibi birçok görevi yerine getirebilirler.

Express.js Middleware Nasıl Kullanılır?

Express.js middleware’leri, app.use() fonksiyonu ile kullanılabilir. Bu fonksiyona, bir ara yazılım fonksiyonu verilir ve bu fonksiyon, istek alındığında veya yanıt verildiğinde çalıştırılır. İşte basit bir middleware kullanımı örneği:

app.use(function(req, res, next) {
  console.log('Middleware çalıştı!');
  next();
});

Bu örnekte, app.use() fonksiyonuna bir fonksiyon verilir. Bu fonksiyon, her HTTP isteği aldığında çalışacak ve “Middleware çalıştı!” yazısını konsola yazdıracaktır. next() fonksiyonu, sonraki middleware veya yönlendiriciye geçiş yapmak için kullanılır. Bu örnekte, next() fonksiyonu, isteğin bir sonraki middleware veya yönlendiriciye geçmesini sağlar.

Middleware Örnekleri

1. Log Middleware

Bu middleware, gelen her isteği kaydeder ve hangi isteğin ne zaman yapıldığını gösterir.

app.use(function(req, res, next) {
  console.log(`[${new Date().toISOString()}] ${req.method} ${req.url}`);
  next();
});

2. Authorization Middleware

Bu middleware, kullanıcının giriş yapmış olup olmadığını kontrol eder ve yetkisiz erişimlerde hata mesajı döndürür.

app.use(function(req, res, next) {
  if (req.user) {
    next();
  } else {
    res.status(401).send('Yetkisiz erişim!');
  }
});

3. Error Handling Middleware

Bu middleware, uygulama hatalarını işler ve kullanıcıya hata mesajı gösterir.

app.use(function(err, req, res, next) {
  console.error(err.stack);
  res.status(500).send('Bir hata oluştu!');
});

Kendi Middleware’lerinizi Yazma

Kendi middleware’lerinizi yazmak için, bir fonksiyon oluşturmanız ve bu fonksiyonun req, res, ve next parametreleri alması gerekir. İşte basit bir örnek:

function myMiddleware(req, res, next) {
  console.log('Merhaba, benim özel middleware\'im!');
  next();
}

app.use(myMiddleware);

Bu örnekte, myMiddleware adında bir fonksiyon tanımlanır ve app.use() fonksiyonu ile uygulamaya eklenir. myMiddleware fonksiyonu, “Merhaba, benim özel middleware’im!” yazısını konsola yazdıracaktır.

Sonuç

Bu makalede, Express.js middleware’lerinin ne olduğunu, nasıl kullanıldığını ve nasıl yazılacağını örneklerle anlattım. Middleware’ler, Express.js uygulamalarınızda işlemleri modüler hale getirmenize, kod tekrarını azaltmanıza ve kodun okunabilirliğini artırmanıza olanak sağlar. Umarım bu makale, Express.js middleware’leri hakkında size faydalı bilgiler vermiştir.

Evet ExpressJS’de middleware konusu bu şekilde. Tüm NodeJS yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu