Routing ve middleware Node.js'deki iki önemli kavram ve Express web uygulamaları oluşturmaya yönelik çerçevedir.
Routing:
- Routing 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.
- içinde Express 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.
Middleware:
- Middleware 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 biri middleware req(istek) ve res(yanıt) parametrelerini alır ve işlemeyi gerçekleştirebilir, isteği bir sonrakine iletebilir middleware veya müşteriye bir yanıt göndererek işlemeyi sonlandırabilir.
Örnek birleştirme Routing ve Middleware in 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...');
});
Bu örnekte, sunucuya gelen her yeni isteği günlüğe kaydetmek için bir özel tanımladık. Bu, yöntemi kullanarak tüm uygulamaya uygulanır. Daha sonra biri ana sayfa() ve diğeri hakkında sayfası() için olmak üzere iki rota tanımladık. Son olarak sunucuyu başlatıyoruz ve 3000 numaralı bağlantı noktasını dinliyoruz. middleware loggerMiddleware
middleware app.use()
'/'
'/about'
Her istek için, isteği karşılık gelen rota işleyicisine veya sırayla iletmeden önce konsola bir mesaj kaydederek yürütülecektir. middleware loggerMiddleware
middleware
routing Bu ve kombinasyonu, middleware bir uygulamada farklı istekleri ele almamıza ve ortak görevleri verimli bir şekilde gerçekleştirmemize olanak tanır Express.