0Pricing
JavaScript Academy · Ders

Girdi Doğrulama, Kaçış Temelleri

Küçük izin listeleri ve korumalarla girdileri doğrulayıp normalleştirin; metni göstermeden önce riskli karakterlerden kaçış uygulayın.

Girdi Doğrulama, Kaçış Temelleri, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.

Genel bakış

Hedef: Girdileri sıradan ve güvenli hâle getirmek.

  • Erken reddetmek için koruma koşullarını kullanın
  • Belirsiz kurallar yerine izin listelerini tercih edin
  • Basit bir biçime normalleştirin
  • Metni göstermeden önce özel karakterleri kaçışlayın
Girdi Doğrulama, Kaçış Temelleri — resim 1

Sayı korumasının temelleri

Basit korumalar ekleyin: türü denetleyin, aralığı denetleyin ve son değere normalleştirin.

// Validate age: number and range guard
function parseAge(input) {
  // trim and parse
  const n = Number(input);
  if (!Number.isFinite(n)) return null; // reject non-numbers
  if (n < 0 || n > 130) return null;    // reject out-of-range
  return Math.floor(n);                  // normalize to integer
}

console.log("age ok:", parseAge("21"));
console.log("age bad:", parseAge("twenty"));
Girdi Doğrulama, Kaçış Temelleri — resim 2

Güvenli görüntüleme için kaçışlama

Kullanıcı metnini göstermeden önce, arayüzün onu düz metin olarak işlemesi için özel karakterleri kaçışlayın.

// Escape a few risky characters before displaying in HTML contexts
function escapeText(s) {
  if (typeof s !== "string") return "";
  return s
    .replaceAll("&", "&amp;")
    .replaceAll("<", "&lt;")
    .replaceAll(">", "&gt;")
    .replaceAll("\"", "&quot;")
    .replaceAll("'", "&#39;");
}

console.log("escaped:", escapeText("<b>Hello & bye</b>"));
Girdi Doğrulama, Kaçış Temelleri — resim 3

Uygulamada izin verilenler listeleri

Sabit kümeler için (kodlar veya roller gibi) izin verilenler listelerini tercih edin. Büyük/küçük harf kullanımını ve boşlukları normalleştirin.

// Allowlist example: only certain country codes
const ALLOWED = new Set(["TR", "US", "DE", "GB"]);

function parseCountry(code) {
  if (typeof code !== "string") return null;
  const up = code.trim().toUpperCase();
  if (!ALLOWED.has(up)) return null; // reject unknown
  return up; // normalized
}

console.log("country ok:", parseCountry("tr"));
console.log("country bad:", parseCountry("xx"));
Girdi Doğrulama, Kaçış Temelleri — resim 4

Küçük nesne doğrulayıcı

Türü ve sınırları denetleyin, ardından kodunuzun geri kalanının güvenebileceği normalleştirilmiş bir yapı döndürün.

// Validate a tiny user object and normalize
function validateUser(input) {
  if (typeof input !== "object" || input === null) return null;

  const nameOk = typeof input.name === "string" && input.name.trim().length >= 1 && input.name.trim().length <= 40;
  const ageOk = parseAge(input.age) !== null;

  if (!nameOk || !ageOk) return null;

  return {
    name: input.name.trim(),
    age: parseAge(input.age)
  };
}

console.log("user ok:", validateUser({ name: " Ayla ", age: "22" }));
console.log("user bad:", validateUser({ name: "", age: "old" }));
Girdi Doğrulama, Kaçış Temelleri — resim 5

İyi savunmacı programlama alışkanlıkları

İpuçları:

  • Sınır noktalarında doğrulama yapın (kullanıcı girdisi, ağ).
  • İzin verilenler listelerini, aralıkları ve tür denetimlerini kullanın.
  • Bir kez normalleştirin; geri kalanını basit tutun.
  • Metni kullanıcılara göstermeden önce kaçışlayın.
Girdi Doğrulama, Kaçış Temelleri — resim 6

Savunmacı girdi temelleri sınavı

Hızlı kontrol: Güvenli girdi deseni.

Girdi Doğrulama, Kaçış Temelleri — resim 7

Özet

Özet: Erken koruma uygulayın, izin verilenler listelerini kullanın, güvenli bir yapıya normalleştirin ve görüntülemeden önce kaçışlayın. Her adımı küçük ve okunabilir tutun.

Girdi Doğrulama, Kaçış Temelleri — resim 8

Sıkça Sorulan Sorular

“Girdi Doğrulama, Kaçış Temelleri” dersi ücretsiz mi?

Evet — “Girdi Doğrulama, Kaçış Temelleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.

“Girdi Doğrulama, Kaçış Temelleri” dersinde ne öğreneceğim?

Küçük izin listeleri ve korumalarla girdileri doğrulayıp normalleştirin; metni göstermeden önce riskli karakterlerden kaçış uygulayın. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.

“Girdi Doğrulama, Kaçış Temelleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Girdi Doğrulama, Kaçış Temelleri
  2. Güvenli Nesne Birleştirme; Dondurma ve Mühürleme
  3. Hata Sınırları (Kavramsal) — Çatı Olmadan
← JavaScript Academy Sayfasına Dön