Fastify.js ile Routing ve Kullanımı


Fastify.js ile Routing ve Kullanımı

Modern Node.js projelerinde performans ve esneklik arayan geliştiriciler için Fastify.js popüler bir tercihtir. Özellikle "Fastify.js ile Routing", API veya web uygulamalarında talep edilen farklı işlemleri ayırmamıza ve yönetmemize olanak tanır. Geleneksel Express.js uygulamalarına benzerlik göstermesine rağmen, Fastify.js kendi sade ve hızlı routing yapısıyla dikkat çeker.

Fastify.js Routing Temelleri

Fastify.js ile routing tanımlamak oldukça basittir. Her rota için HTTP metodunu (GET, POST vb.), yolunu ve işlem fonksiyonunu belirtmek yeterlidir. Fastify.js ile bir rota tanımlamak için örnek kod aşağıdaki gibi yazılır:

const fastify = require('fastify')();

fastify.get('/merhaba', async function (request, reply) {
  return { mesaj: 'Merhaba Fastify.js ile Routing!' };
});

fastify.listen({ port: 3000 }, (err, address) => {
  if (err) throw err;
  console.log(`Sunucu çalışıyor: ${address}`);
});

Yukarıda göreceğiniz gibi, fastify.get('/merhaba', ...) ile GET metodunda bir /merhaba rotası tanımlandı. "Fastify.js ile Routing" sistemi, URL'ye göre fonksiyonunuzu otomatik olarak tetikler.

Parametreli Rotalar ve Route Özellikleri

Fastify.js ile dinamik rotalar da kolayca tanımlanabilir. Örneğin, bir kullanıcı ID'sine göre veri almak istediğinizde:

fastify.get('/kullanici/:id', async function (request, reply) {
  const kullaniciId = request.params.id;
  return { id: kullaniciId, mesaj: 'Kullanıcı bulundu.' };
});

Burada :id parametresi sayesinde request.params.id ile dinamik olarak bilgiye ulaşabiliyorsunuz. "Fastify.js ile Routing" sayesinde middleware, şema doğrulama ve önceden tanımlanmış yanıtlar gibi birçok özelliği de konfigüre edebilirsiniz.

Fastify.js Routing İle Grup Kullanımı (Prefix)

Rotaları gruplamak için register fonksiyonu ile prefix tanımı yapılabilir:

async function routes (fastify, options) {
  fastify.get('/', async (request, reply) => {
    return { root: true };
  });
}
fastify.register(routes, { prefix: '/api' });

Böylece /api/ altında başlayan tüm istekler artık bu grup ile karşılanır. Bu yöntem, "Fastify.js ile Routing" sayesinde kurumsal projelerde kodunuzu kolayca ölçeklendirmenize yardımcı olur.

Sonuç: Neden Fastify.js ile Routing?

"Fastify.js ile Routing", hızlı, ölçeklenebilir ve anlaşılır bir API mimarisi kurmanıza olanak tanır. Performans odaklı olması, minimal konfigürasyon gerektirmesi ve gelişmiş şema doğrulama yetenekleriyle modern Node.js projelerinde önemli bir avantaj sunar. Routing yapısına dair bu pratik bilgiler ile projelerinizi hem esnek hem de profesyonelce geliştirebilirsiniz.