Express.js Nedir?
Express.js, Node.js ile çalışan bir web framework'üdür. Kısacası, web uygulamaları geliştirirken size bir temel sağlayan araçlardan biri olarak düşünülmeli. Aslında, Express.js'in hayatınıza girmesi, bir yolculuğa çıkmaya benzer; o kadar basit ve güçlü bir framework ki, onu kullandığınızda işler bir anda çok daha kolay hale geliyor.
Express, özellikle küçük ve orta ölçekli uygulamalar için ideal bir yapı sunar. Performansı yüksek olmasının yanı sıra, kurulumu ve kullanımı da oldukça basittir. Express ile projelerinizi hızlı bir şekilde geliştirebilirsiniz. Ama tabii ki önce, Express’i kurarak işe başlamamız gerekiyor.
1. Express.js Kurulumu
Başlamadan önce, Node.js’in bilgisayarınızda kurulu olduğundan emin olun. Node.js’i kurmak için [resmi web sitesinden](https://nodejs.org) en son sürümünü indirip kurabilirsiniz.
Node.js kurulumunu tamamladıysanız, terminal veya komut istemcisini açın ve projeniz için yeni bir klasör oluşturun. Bu adımda size gerekli olan her şey için temel bir yapıyı kuracağız.
mkdir express-app
cd express-app
npm init -y
Yukarıdaki komut, proje klasörünüzü oluşturur ve `package.json` dosyasını hazırlar. Şimdi Express'i yükleyebiliriz:
npm install express --save
Evet, Express yüklenmiş durumda!
2. Basit Bir Web Sunucusu Kurma
Artık Express'i projeye dahil ettiğimize göre, en basit web sunucumuzu kurarak işe başlayalım. Aşağıdaki gibi bir `app.js` dosyası oluşturalım:
const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Merhaba, Express!');
});
app.listen(port, () => {
console.log(`Sunucu ${port} portunda çalışıyor!`);
});
Bu kod parçası, Express uygulamanızın temelini atar. `app.get()` ile bir HTTP GET isteği alır ve kullanıcıya “Merhaba, Express!” mesajını gönderir. Sunucumuz 3000 portunda çalışacak.
Yukarıdaki kodu kaydedip terminalde şu komutu çalıştırarak uygulamanızı başlatabilirsiniz:
node app.js
Tarayıcınızda `http://localhost:3000` adresine gittiğinizde, ekranda "Merhaba, Express!" mesajını göreceksiniz. İşte basit bir Express.js sunucusu kurduk!
3. Dinamik Sayfalar Oluşturma
Şimdi, biraz daha ileri gidip dinamik sayfalar oluşturalım. Express.js ile dinamik içerik oluşturmak gerçekten çok kolay. Örneğin, kullanıcılara kişisel bir selamlaşma mesajı göstermek isteyebilirsiniz. Aşağıdaki gibi bir kodla bunu gerçekleştirebiliriz:
app.get('/merhaba/:isim', (req, res) => {
const isim = req.params.isim;
res.send(`Merhaba, ${isim}!
`);
});
Bu örnekte, kullanıcı URL'deki isim parametresine göre bir selamlaşma mesajı alacak. Örneğin, `http://localhost:3000/merhaba/John` adresine gittiğinizde "Merhaba, John!" mesajını göreceksiniz.
4. HTML ve Statik Dosyalar Sunma
Web uygulamanızda statik dosyalar (CSS, JavaScript, resimler vb.) kullanmak oldukça yaygındır. Express.js ile bu dosyaları sunmak da çok kolay. Aşağıdaki gibi bir kod parçası kullanarak, projedeki `public` klasöründeki statik dosyaları sunabilirsiniz:
app.use(express.static('public'));
Artık `public` klasöründeki tüm dosyalar, web uygulamanız üzerinden erişilebilir olacak.
5. Form Verisi Gönderme ve Alma
Birçok web uygulaması, kullanıcıdan form verisi alır. Express.js ile form verisi göndermek ve almak da oldukça basittir. Aşağıdaki örnekte, bir kullanıcı formu oluşturup gönderdiğinde bu veriyi nasıl alacağımızı gösterelim:
Öncelikle, HTML formumuzu oluşturalım:
app.get('/form', (req, res) => {
res.send(`
`);
});
Ve form verisini POST yöntemi ile alalım:
const bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }));
app.post('/submit', (req, res) => {
const isim = req.body.isim;
res.send(`Merhaba, ${isim}!
`);
});
Artık, kullanıcılar formu doldurup gönderdiğinde, isimlerini alarak onları selamlayabilirsiniz.
Sonuç
Express.js, basitliği ve güçlü özellikleriyle web geliştirme sürecinizi hızlandırır. Kısa süre içinde dinamik web uygulamaları oluşturabilir ve projelerinizi ölçeklendirebilirsiniz. Bu yazıda, Express ile bir uygulama kurmayı ve bazı temel işlemleri nasıl gerçekleştireceğimizi öğrendik. Gerçekten çok fazla özelleştirme yapabileceğiniz bu framework, backend geliştirme için mükemmel bir seçenek.
Eğer siz de Express.js ile projeler geliştirmeyi düşünüyorsanız, umarım bu rehber size ilham verir ve başlamak için gereken cesareti verir.