logo
GeekFormat

JSON Schema Doğrulayıcı

İlgili Öneriler

Özellikler

  • Draft-07 standardı doğrulama: JSON Schema Draft-07 spesifikasyonunu tamamen takip eder, tipler, zorunlu alanlar, özellikler, regex, formatlar ve enum dahil kapsamlı temel kural doğrulamasını destekler
  • Güçlü kombinasyon mantığı: allOf, anyOf, oneOf, not gibi gelişmiş kombinasyon anahtar kelimelerini destekler — karmaşık iç içe yapılar ve çok kısıtlamalı doğrulama senaryolarıyla kolayca başa çıkar
  • Hassas hata konumlandırma: ayrıntılı hata yolları ve anlamsal hata mesajları sağlar, geliştiricilerin ve test uzmanlarının API sözleşme çakışmalarını ve veri yapısı anomalilerini hızlıca bulmasına yardımcı olur
  • API sözleşme testi: frontend-backend arayüz hata ayıklama ve otomatik sözleşme testi için mükemmel uygunlukta, gerçek yanıt verilerinin API dokümantasyonunda tanımlanan schema'yla sıkı şekilde eşleşmesini sağlar
  • Yerel hızlı işleme: saf tarayıcı tarafı hesaplama, sunucuya yükleme gerekmez, hassas iş veri yapılarının ve test verilerinin gizliliğini ultra hızlı sıfır gecikmeli işleme ile sağlar

Sık Sorulan Sorular

JSON Schema kullanarak API yanıt verileri nasıl doğrulanır?

Beklenen JSON Schema tanımınızı sola, gerçek API yanıt JSON'unuzu sağa yapıştırmanız yeterli. Araç her iki yapıyı otomatik olarak karşılaştırır, veri tiplerini, zorunlu alanları, regex patternlerini ve daha fazlasını hassas şekilde doğrular. Bu, API sözleşme testi ve frontend-backend veri yapısı tutarlılığını sağlamak için gerekli bir adımdır.

Hangi JSON Schema standartları ve doğrulama kuralları destekleniyor?

Araç JSON Schema Draft-07 standardını tamamen takip eder. Temel tip kontrolü (type), zorunlu alanlar (required), özellik tanımları (properties), regex pattern eşleştirme (pattern), format doğrulama (format), enum değerleri (enum) ve güçlü kombinasyon mantığı doğrulamasını (allOf, anyOf, oneOf, not) destekler.

Doğrulama başarısız olduğunda hatalar nasıl hızlıca bulunur?

JSON verileri schema'yla eşleşmediğinde, araç son derece ayrıntılı bir hata raporu oluşturur. Başarısız JSON yolunu, belirli hata türünü (tip uyumsuzluğu veya eksik zorunlu alan gibi) ve ilgili schema kuralını hassas şekilde gösterir — backend geliştirme ve veri temizleme hata ayıklama verimliliğini büyük ölçüde artırır.

Otomatik veri yönetimi için JSON Schema nasıl kullanılır?

ETL veri temizleme veya veri alımından önce, verilerin önceden tanımlanmış schema spesifikasyonlarına uygun olup olmadığını doğrulamak için bu aracı kullanabilirsiniz. Bu, kirli verileri ve anomalileri etkili şekilde yakalar, veritabanlarına veya downstream sistemlere giren veri kalitesini sağlar — sağlam veri pipeline'ları oluşturmanın kritik bir adımıdır.

Online JSON Schema doğrulama özel verilerimi açığa çıkarır mı?

Hayır. Tüm JSON Schema Doğrulayıcı işleme tamamen tarayıcınızda yerel olarak gerçekleşir. Kurumsal API veri yapıları veya kişisel iş verileri olsun, hiçbir şey hiçbir sunucuya yüklenmez, verileriniz için enterprise düzeyinde gizlilik koruması sağlar.

JSON Schema Anahtar Kelime Kılavuzu

Aşağıdaki tablo, JSON Schema spesifikasyonunda en sık kullanılan doğrulama anahtar kelimelerini hızlı başvuru için kategorilere göre düzenlenmiş olarak listeler.

Anahtar KelimeAçıklama
Temel Tipler
typeVeri tipini belirtin: string, number, integer, boolean, array, object, null. Tek tip veya tip dizisini destekler.
Nesne Doğrulama
propertiesNesne özellikleri için alt şemalar tanımlayın.
requiredHangi özelliklerin gerekli olduğunu belirten metin dizisi.
additionalPropertiesproperties içinde tanımlanmayan ek özelliklere izin verilip verilmediğini kontrol eder; false veya bir şema olabilir.
propertyNamesÖzellik adlarının eşleşmesi gereken şema (genellikle pattern regex kullanır).
minPropertiesBir nesnenin içermesi gereken minimum özellik sayısı.
maxPropertiesBir nesnenin içerebileceği maksimum özellik sayısı.
Sabitler ve Enumlar
enumİzin verilen değerler dizisi; veri diziden tam olarak bir değer olmalıdır.
constSabit değer; veri bu değere kesinlikle eşit olmalıdır.
Sayısal Kısıtlamalar
minimumMinimum sayısal değer (dahil).
maximumMaksimum sayısal değer (dahil).
exclusiveMinimumDeğer kesinlikle bundan büyük olmalıdır (hariç).
exclusiveMaximumDeğer kesinlikle bundan küçük olmalıdır (hariç).
multipleOfDeğer belirtilen sayının katı olmalıdır.
Metin Kısıtlamaları
minLengthMinimum metin uzunluğu.
maxLengthMaksimum metin uzunluğu.
patternNormal ifade; metin bu desenle eşleşmelidir.
formatAnlamsal format doğrulaması: email, uri, date-time, uuid, ipv4, ipv6, hostname vb.
Dizi Kısıtlamaları
itemsDizi elemanları için şema (tek şema tüm elemanlara uygulanır).
minItemsMinimum dizi eleman sayısı.
maxItemsMaksimum dizi eleman sayısı.
uniqueItemsDizi elemanlarının benzersiz olması gerekip gerekmediği.
containsEn az bir dizi elemanı bu şemayla eşleşmelidir.
Kombinasyon Mantığı
allOfVeri tüm alt şemalarla eşleşmelidir (mantıksal VE).
anyOfVeri en az bir alt şemayla eşleşmelidir (mantıksal VEYA).
oneOfVeri tam olarak bir alt şemayla eşleşmelidir (XOR).
notVeri bu şemayla eşleşMEMELİDİR (mantıksal DEĞİL).
Koşullu Doğrulama
ifKoşullu şema; veri if ile eşleşirse, then'i sağlamalıdır; aksi takdirde else'i sağlamalıdır.
thenif koşulu sağlandığında sağlanması gereken şema.
elseif koşulu sağlanmadığında sağlanması gereken şema.
Referanslar ve Yeniden Kullanım
$refDiğer şema tanımlarına başvuru; yerel başvuruları (#/$defs/xxx) ve uzak başvuruları destekler.
$defsYeniden kullanılabilir alt şemalar tanımlayın (Draft 2019-09+; eski sürümler definitions kullanır).
definitionsDraft 4-7'de yeniden kullanılabilir alt şemalar için anahtar kelime.
Meta Bilgiler
titleŞema başlığı (açıklama, doğrulanmaz).
descriptionŞema açıklaması (açıklama, doğrulanmaz).
defaultVarsayılan değer (açıklama, doğrulanmaz).
examplesÖrnek değerler dizisi (açıklama, doğrulanmaz).
$schemaKullanılan JSON Schema spesifikasyon sürümünü belirtin.
Bağımlılıklar
dependentRequiredÖzellik bağımlılığı: bir özellik var olduğunda, diğer özellikler de var olmalıdır (Draft 2019-09+).
dependenciesHem özellik hem de şema bağımlılıklarını kapsayan Draft 4-7'deki bağımlılık anahtar kelimesi.

JSON Schema Sürüm Karşılaştırması

JSON Schema birden fazla Draft sürümünden geçerek gelişmiştir. Draft 7 şu anda en yaygın kullanılan sürümdür; Draft 2020-12 en son kararlı sürümdür.

ÖzellikDraft 4Draft 6Draft 72019-092020-12
tip doğrulaması
gerekli alanlar
enum/const✓ enum
minimum/maximum
exclusiveMinimum/Maximummantıksalsayısayısayısayı
multipleOf
minLength/maxLength
pattern regex
format doğrulamasıvarsayılan olarak yalnızca açıklamavarsayılan olarak yalnızca açıklama
items dizisi
contains
minItems/maxItems
uniqueItems
additionalProperties
propertyNames
allOf/anyOf/oneOf/not
if/then/else
$ref başvuruları
$defs yeniden kullanımdefinitionsdefinitionsdefinitions$defs$defs
dependentRequired
prefixItems tanımlama gruplarıdizi biçimidizi biçimidizi biçimidizi biçimiprefixItems
unevaluatedProperties
$dynamicRef/$anchor✓ $recursiveRef✓ dynamicRef