4.1.1.1. Express – Request Nesnesinin Özellikleri ve Metotları

req nesnesi HTTP isteği temsil eder ve istek sorgu metni, parametreleri, body kısmı, HTTP başlıkları ve benzeri özelliklere sahiptir.

Request Nesnesi Özellikleri

  • req.app – Bu özellik, katman kullanan ekspres uygulamasının örneğine bir referans tutar.
  • req.baseUrl – Yönlendirmenin yapıldığı URL yolu.
  • req.body – Anahtar-değer çiftini içeren veri request içinde gönderilir. Geçerli değeri undefined’tır. Body-parser gibi ara katmanlar ile ayrıştırma yapıldığında oluşur.
  • req.cookies – Cookie ara katman uygulaması kullandığınızda bu özellik isteme gönderilen cookie’i içeren bir nesnedir.
  • req.fresh – İsteğin yeni bir istek olup olmadığını döndürür. req.stale tam zıttı sonuç döndürür.
  • req.hostname – “Host” bilgisini HTTP header’daki değerini içerir.
  • req.ip – İstekte bulunan IP adresini içerir.
  • req.ips – Güvenli proxy ayarları doğru olduğunda, bu özellik “X-Forwarded-For” istek başlığında belirtilen bir dizi IP adresi içerir.
  • req.originalUrl – Bu özellik req.url’ye benzer ancak URL routing sonucu değiştirilen url bilgisini tutar.
  • req.params – Verilen yönlendirme parametrelerini eşlemek için özellikleri içeren bir nesnedir. Örneğin, /user/:name yönlendirme var ise, name özelliği req.params.name olarak hazırdır. Bu nesnenin geçerli değeri { }’dir.
  • req.path – İstenen URL’nin yolunu içerir.
  • req.protokol – İstek protokolünü metin olarak tutar. “http” veya “https” sonucu döndürür.
  • req.query – Yönlendirmede her sorgu metni parametresi için bir özellik içeren nesnedir.
  • req.route – Geçerli yönlendirme eşleştirmesi.
  • req.secure – TLS bağlantısının oluşturulması durumunda true değeri döndürür.
  • req.signedCookies – cookie-parser arayazılımı kullanıldığı zaman, bu özellik istekten gönderilen, unsigned ve kullanıma hazır signed cookies içerir.
  • req.stale – İstemin eskimiş olup olmadığını döndürür. req.fresh komutunun tersidir.
  • req.subdomains – İsteğin domain adındaki alt domain’lerin dizisini verir.
  • req.xhr – Boolean bir değerdir. Eğer isteğin başlık alanında “X-Requested-With” değeri “XMLHttpRequest” ise true değeri döndürür. AJAX tabanlı bir isteğin yapıldığını gösterir.

Request Metotları

req.accepts(types)

Bu metot, isteğin Accept HTTP header alanına bağlı olarak, belirtilen içerik türlerinin kabul edilebilir olup olmadığını denetler. Örneğin:

req.get(field)

Bu metot, belirli HTTP request header alanı döndürür. Örneğin:

req.is(type)

Bu metot, gelen isteğin Content-Type” HTTP header alanının tip patametresi tarafından belirlenen MIME tipi ile eşleştiğinde true değerini döndürür.

req.param(name [, defaultValue])

Bu metot param isminin değerini döndürür.