JSON Schema'yı API sözleşmelerini belgelemek, JSON payload'larını doğrulamak ve testler/demolar için gerçekçi mock veri üretmek için kullanın.
Adım 1 – Gerçek bir örnekle başlayın
- Gerçek bir API yanıtını, istek payload'unu veya yapılandırma JSON'unu önce biçimlendiriciye yapıştırın.
- Şema sapmasını önlemek için her endpoint için tek bir kanonik JSON örneği tutun.
Adım 2 – Temel bir şema üretin
- Türleri, gerekli alanları ve iç içe yapıyı çıkarmak için Şema Üreticiyi kullanın.
- Üretim için açıklamaları, formatları ve kısıtları (min/max, pattern) iyileştirin.
Adım 3 – JSON'u şemaya göre doğrulayın
- Şemanızı ve gerçek payload'ları Şema Doğrulayıcı'ya yapıştırın.
- Hataları; JSON örneğini (bug) veya şemayı (sözleşme değişikliği) güncelleyerek düzeltin.
Adım 4 – Test için mock veri üretin
- Şemanızla eşleşen gerçekçi örnek payload'lar oluşturmak için Mock Üretici'yi açın.
- Test verisini tekrarlanabilir ve ölçeklenebilir yapmak için seed + batch size kullanın.
Adım 5 – Paylaşın ve yeniden kullanın
- Şemaları sürüm kontrolünde saklayın ve API dokümantasyonunda bağlantı verin.
- Kararlı JSON örneklerinden typed kod (TypeScript/Java/etc.) üretin.
JSON Schema özellikleri hakkında önemli not
- Bazı şemalar
$ref, anyOf, oneOf, ve allOfgibi gelişmiş anahtar kelimelere dayanır. - Doğrulayıcılar, taslakları ve anahtar kelimeleri destekleme konusunda farklılık gösterebilir; katı uyumluluk için CI'da tam bir JSON Schema doğrulayıcı kullanın.
Örnek: JSON → JSON Schema (basitleştirilmiş)
// JSON input
{
"id": 1,
"name": "Maeve Winters",
"active": true,
"tags": ["developer", "backend"]
}
// Generated schema (example)
{
"type": "object",
"properties": {
"id": { "type": "integer" },
"name": { "type": "string" },
"active": { "type": "boolean" },
"tags": {
"type": "array",
"items": { "type": "string" }
}
},
"required": ["id", "name", "active", "tags"]
}