Input validation
- Node.js kursu
- İleri seviye
- Ders 22/83
- 5 dk
express-validator ile input validation öğrenirsin.
express-validator
express-validator, Express rotalarında gelen veriyi doğrulayan bir modüldür. İstek gövdesini (body), sorguyu (query) ve parametreleri (params) kontrol eder; hatalı veri işlenmeden yakalanır.
Temel kullanım: body("email").isEmail() ile email alanını doğrularsın. validationResult(req) ile hataları toplar, boş değilse 400 yanıtı dönersin. Bu desen, kullanıcıdan gelen veriye asla güvenmeme ilkesini uygular.
body ve validationResult
express-validator iki temel API sunar. body("alan") bir doğrulama zinciri (validation chain) başlatır; .isEmail(), .notEmpty(), .isLength({ min: 3 }) gibi metotlarla koşullar eklersin.
Doğrulama zincirini rotaya orta katman olarak eklersin. İşleyicide validationResult(req) çağırıp .isEmpty() ile hata yokluğunu kontrol edersin. Hata varsa .array() ile hata listesini alıp istemciye dönersin.
Uygulama body türünü yaz
body fonksiyonunu express-validator'den içe aktar. typeof body sonucunu yaz.
Başlangıç kodu
// modülü içe aktar, body al
// türünü yazÖrnek çözüm
const { body } = require("express-validator");
console.log(typeof body);Beklenen çıktı
function
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 express-validator ne yapar?
- Veritabanı bağlar
- Girdi doğrulama yapar Doğru cevap
- Ağ hızını ölçer
- Dosya okur
Açıklama: express-validator girdi doğrulama yapar.
2 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
body("email") |
Email alanı |
validationResult |
Hataları toplar |
isEmail() |
Email doğrular |
notEmpty() |
Boş değil |
3 Modül adını tamamla
const { body } = require("____")
const { body } = require("express-validator")
Açıklama: express-validator modülü require("express-validator") ile yüklenir.