Express.js ile İlk Adımlar: Başlangıç
Express.js ile ilk web uygulamanızı yapmaya karar verdiniz ve bu, web geliştirme yolculuğunuzun başlangıcı! Her şeyden önce Node.js’i bilgisayarınıza kurmanız gerektiğini unutmayın. Eğer Node.js bilgisayarınızda yüklü değilse, resmi site üzerinden kolayca indirebilirsiniz.
Express.js’i kullanmaya başlamak için terminal veya komut satırına şu komutu yazmalısınız:
npm init -yBu komut, projeniz için temel bir package.json dosyası oluşturur. Sonrasında Express.js’i projenize dahil etmek için şu komutu çalıştırabilirsiniz:
npm install expressBu adımla Express.js projenize kurulmuş olur.
Web Sunucusunu Başlatmak
Express.js’i kullanarak bir web uygulaması oluşturmak, tıpkı bir web sunucusu kurmak gibidir. Şimdi ise Express ile basit bir sunucu başlatmayı öğreneceğiz. Aşağıdaki gibi bir kod yazabilirsiniz:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Merhaba Express.js!');
});
app.listen(3000, () => {
console.log('Sunucu http://localhost:3000 adresinde çalışıyor...');
});
Yukarıdaki kodda, Express.js uygulamamızı başlatıyoruz. `app.get()` fonksiyonu, belirli bir URL'ye (bu örnekte ana sayfaya) geldiğinde bir yanıt (response) döndüren bir işlevdir. `app.listen()` fonksiyonu ise sunucuyu belirtilen portta çalıştırır.
Route (Yönlendirme) Kullanımı
Express.js ile yönlendirme yapmak, oldukça kolaydır. `app.get()`, `app.post()`, `app.put()`, `app.delete()` gibi metodlar, HTTP isteklerine yanıt vermek için kullanılır. Örneğin, başka bir sayfayı yönlendirmek için şu kodu kullanabilirsiniz:
app.get('/hakkimizda', (req, res) => {
res.send('Hakkımızda sayfasına hoş geldiniz!');
});
Bu kod ile `/hakkimizda` adresine gelen kullanıcıya basit bir yanıt dönebiliriz. Yönlendirmeler, web uygulamanızda sayfalar arasında gezinmeyi sağlar.
Dinamik İçerik ve Parametreler
Express.js ile yalnızca statik içerik değil, dinamik içerik de oluşturabilirsiniz. URL parametreleri ile çalışmak oldukça basittir. Örneğin, kullanıcıdan isim alıp onu yanıt olarak göstermek için aşağıdaki kodu kullanabilirsiniz:
app.get('/merhaba/:isim', (req, res) => {
const isim = req.params.isim;
res.send(`Merhaba, ${isim}!`);
});
Bu örnekte, kullanıcı `/merhaba/Ahmet` şeklinde bir URL’ye gittiğinde, “Merhaba, Ahmet!” şeklinde bir yanıt alır. Parametreler, daha kişisel ve etkileşimli içerikler oluşturmanıza yardımcı olur.
Middleware Kullanımı
Express.js’te middleware, gelen istekler üzerinde işlem yapmanızı sağlar. Örneğin, bir kullanıcı girişi kontrolü yapmanız gerektiğinde, bir middleware fonksiyonu kullanabilirsiniz. Aşağıdaki kodda, her istekten önce bir mesaj yazdıran basit bir middleware ekliyoruz:
app.use((req, res, next) => {
console.log(`${req.method} isteği alındı: ${req.url}`);
next();
});
`next()` fonksiyonu, bir sonraki middleware’e geçişi sağlar. Bu yöntem, özellikle kullanıcı doğrulama, isteklerin kaydını tutma gibi işlevlerde kullanışlıdır.
Veritabanı Bağlantısı
Express.js ile uygulamanızda veritabanı kullanmak da oldukça kolaydır. Örneğin, MongoDB gibi bir NoSQL veritabanı kullanmak için Mongoose adlı bir kütüphane kullanabilirsiniz. Aşağıdaki örnek, MongoDB’ye bağlanarak basit bir veri ekleme işlemini gösterir:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/expressdb', { useNewUrlParser: true, useUnifiedTopology: true });
const User = mongoose.model('User', { name: String });
app.post('/kullanici-ekle', (req, res) => {
const user = new User({ name: 'Ahmet' });
user.save()
.then(() => res.send('Kullanıcı eklendi'))
.catch(err => res.send('Hata: ' + err));
});
Bu şekilde Express.js ile veritabanı bağlantısı kurarak dinamik verilerle çalışabilirsiniz.
Web Uygulamanızın SEO Dostu Olması
Web uygulamanızın SEO dostu olması, Google gibi arama motorlarında daha üst sıralarda yer almasını sağlar. Express.js ile SEO uyumlu bir uygulama yapmak için, URL’lerinizi anlamlı ve kullanıcı dostu hale getirmek önemlidir. Örneğin, dinamik sayfalarda doğru meta etiketlerini kullanarak sayfanın içeriğini arama motorlarına tanıtabilirsiniz.
Sonuç
Express.js ile bir web uygulaması yapmak oldukça kolay ve eğlencelidir. Hızlıca kurulum, yönlendirmeler, dinamik içerik, middleware kullanımı ve veritabanı bağlantıları gibi özelliklerle güçlü bir uygulama oluşturabilirsiniz. SEO dostu ve kullanıcı odaklı bir web uygulaması geliştirmek için Express.js harika bir araçtır.