Express.js Nedir?
Express.js ile Web Uygulaması Kurma
İlk olarak, Node.js ve NPM (Node Package Manager) bilgisayarınızda kurulu olmalıdır. Eğer kurulu değilse, [Node.js'in resmi web sitesinden](https://nodejs.org/en/) en son sürümü indirip kurabilirsiniz.
Kurulumdan sonra terminal veya komut satırında `node -v` ve `npm -v` komutlarını girerek doğru şekilde kurulduğunu kontrol edebilirsiniz.
Adım 2: Yeni Bir Proje Başlatın
Artık Express.js projemize başlayabiliriz. Yeni bir proje oluşturmak için, terminalde aşağıdaki komutu kullanarak bir proje dizini oluşturun:
mkdir express-web-app
cd express-web-app
Proje dizinine girdikten sonra, npm ile bir `package.json` dosyası oluşturun. Bunun için şu komutu yazın:
npm init -y
Bu komut, projeniz için temel bir `package.json` dosyası oluşturacaktır.
Adım 3: Express.js'i Kurun
Şimdi Express.js'i kurmamız gerekiyor. Bunu yapmak için şu komutu terminale yazın:
npm install express --save
Bu komut, Express.js'i proje bağımlılığı olarak kurar ve `package.json` dosyasına kaydeder.
Adım 4: Basit Bir Sunucu Kurun
Artık Express.js kurulu, peki nasıl çalıştıracağız? Hadi basit bir "Hello World" uygulaması oluşturalım. Proje dizininde `app.js` isminde bir dosya oluşturun ve içine şu kodu ekleyin:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Merhaba, Express.js!');
});
app.listen(3000, () => {
console.log('Sunucu 3000 portunda çalışıyor');
});
Bu kodda şunlar yapılıyor:
- Express modülünü dahil ettik.
- Basit bir GET isteği ile ana sayfayı (`/`) istedik.
- Kullanıcı `/` adresine gittiğinde "Merhaba, Express.js!" mesajı gösterilecek.
- Sunucuyu 3000 numaralı portta çalıştırdık.
Şimdi terminalde şu komutu çalıştırarak sunucunuzu başlatabilirsiniz:
node app.js
Tarayıcınızda `http://localhost:3000` adresini ziyaret ettiğinizde "Merhaba, Express.js!" mesajını görmelisiniz.
Rotalar ve Dinamik İçerik
app.get('/merhaba/:isim', (req, res) => {
const isim = req.params.isim;
res.send(`Merhaba, ${isim}! Express.js ile tanıştık.`);
});
Bu kodda:
- `:isim` kısmı bir parametre olduğunu belirtir. Bu parametreyi URL’den alıp dinamik olarak kullanabiliriz.
- `/merhaba/Serkan` gibi bir URL çağrıldığında, kullanıcıya "Merhaba, Serkan! Express.js ile tanıştık." mesajı gösterilecektir.
Şablon Motorları ile Dinamik Sayfalar
EJS'i kurmak için şu komutu yazın:
npm install ejs --save
Sonra, Express.js'e şablon motoru olarak EJS'i kullanmasını söyleyelim:
app.set('view engine', 'ejs');
Bir `views` klasörü oluşturup içine `index.ejs` adında bir dosya ekleyelim. Bu dosya şu şekilde olabilir:
Express.js ile Web Uygulaması
<%= mesaj %>
Şimdi, `/` rotasında bu şablonu kullanarak dinamik içerik gönderebiliriz:
app.get('/', (req, res) => {
res.render('index', { mesaj: 'Express.js ile Merhaba!' });
});
Bu rota, `index.ejs` şablonunu kullanarak "Express.js ile Merhaba!" mesajını kullanıcıya gösterecektir.
Sonuç
Express.js ile yapabileceklerinizin sınırı yok. Geliştirdiğiniz projede sadece hayal gücünüz size kılavuz olabilir!