Node.js ' de çok fazla modül vardır.Ama en çok kullanacağınız modüllerin başında express modülü gelir.Bu modül projenizin ana hatlarını hazıralmanızı sağlar.Gelen veriler , gidecek olan veriler , sayfa yönlendirme vs. bu modül ile çok fazla kod yazmadan halledilebilir.Bu sayede zaman da kazanmış olacaksınız.

var app=require("express");
app.get("/yolla",function(req,res){
res.status(200).send("Merhaba");
})

Bakalım yukarıdaki kod bölümümüzde neler yapmışız:

Express ile sayfa yönlendirme

Node.js express modülünde sayfa yönlendirmenin bazı yöntemleri vardır bunları örneklerle açıklayalım.

- res.redirect() yöntemi

Bu yöntemde sayfalara yönlendirme yapılabilir;fakat veri gönderilemez.

Bir url adresine yönlendirme

var app=require("express");
app.get("/yonlendir",function(req,res){
res.redirect("http://google.com");
})

Örneğimizde res.redirect() metodunu kullandık ve istekte bulunanı "http://google.com" adresine yönlendirdik.

Bir önceki adrese gitme ( back yapma )

var app=require("express");
app.get("/yonlendir",function(req,res){
res.redirect("back")
})

Örneğimizde res.redirect() metodunu kullandık ve back yaparak istekte bulunanı bir önceki adrese yönlendirdik.

- res.render() yöntemi

res.redirect() metodu gibi sayfa yönlendirmek için kullanılır;fakat bu yöntemde ayrıca yönlendirilen sayfaya bilgiler gönderilebilir. Bu yöntemde şablon motorlarını kullanmanız gerekebilir ve bunlar express modülünde gömülü olarak gelir.

Bir şablon motoru : Uygulamanızda statik şablon dosyaları kullanmanızı sağlar. Çalışma zamanında, şablon motoru bir şablon dosyasındaki değişkenleri gerçek değerlerle değiştirir ve şablonu istemciye gönderilen bir HTML dosyasına dönüştürür. Bu yaklaşım, bir HTML sayfası tasarlamayı kolaylaştırır.

UYARI : Expess modülünde şablon motoru kullanırken kullanacağınız dosyaları views adında bir dosyanın içinde tutmalısınız.
Aşağıdaki örnekte oluşturacağınız index.pug dosyaları views adlı dosyada tutacağız.Bu express modülünün default yani varsayılan özelliğidir.
var app=require("express");
app.set('view engine', 'pug');
app.get("/yonlendir",function(req,res){
res.render("index",{title:"Günaydın arkadaşlar"})
})

Yukarıdaki örneği incelediğinizde app.set('view engine', 'pug') kod satırını hemen görmüşsünüzdür.

Peki ne işe yarar bu kod satırı :

app.set() : express modülünde ayarları yapılandırmak için kullanılır.
app.set('view engine', 'pug') kod satırında ise kullanacağımız şablon motorunun pug olduğunu belirtiyoruz. pug şablon motoru için ekstra olarak modül yüklemenize gerek yoktur.
Çünkü express modülünde zaten gömülüdür.
res.render("index",{title:"Günaydın arkadaşlar"}) kod satırına bakalım şimdi de:

- res.render("index"... ile index.pug adlı dosyamıza kullanıcıyı yönlendirdik.
- Daha sonra {title:"Günaydın arkadaşlar"} ile title adında bir değişkende "Günaydın arkadaşlar" metnini saklayıp index.pug adlı dosyamıza gönderdik.

Gönderdiğimiz veriyi yönlendirilen sayfada görüntüleme :

Her şey yolunda buraya kadar peki bu title değişkenindeki veriyi index.pug dosyamızda nasıl göstereceğiz : index.pug adlı dosyamızı açıyoruz ve aşağıdaki gibi düzenleme yapıyoruz.
html head title= title body

Gördüğünüz gibi her şey çok basit : title= title kısmında eşittirden sonraki title bizim gönderdiğimiz değişkenimiz.