Ben bu other question gördüm ama bu aynı değil, ve benim sorun daha basit gibi hissediyorum, ama sadece çalışmıyor. Bir node.js projesinde JSON doğrulama için AJV kullanmak isteyen kulüplerJSON Şema tanımı nesnelerin dizisi için
[
{ "loc": "a value 1", "toll" : null, "message" : "message is sometimes null"},
{ "loc": "a value 2", "toll" : "toll is sometimes null", "message" : null}
]
ve benim verileri tanımlamak için denemek için birkaç şemaları denedim ama:
Benim veriler şu şekilde görünecektir böyle
[ { keyword: 'type',
dataPath: '',
schemaPath: '#/type',
params: { type: 'array' },
message: 'should be array' } ]
şema ben denedim görünüyor:
{
"type": "array",
"items": {
"type": "object",
"properties": {
"loc": {
"type": "string"
},
"toll": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"loc"
]
}
}
hep hata olarak bu olsunBen de
this online tool kullanarak şema oluşturmaya çalıştım ama aynı zamanda işe yaramıyor ve doğru sonuç çıkması gerektiğini doğrulamak için, bu çıktıyı
jsonschemavalidator.net karşı denedim, ancak bu da bana benzer bir hata veriyor:
Found 1 error(s)
Message:
Invalid type. Expected Array but got Object.
Schema path:
#/type
Verilere karşı doğrulama noktasında bile değilim, şu anda sadece şemanın kendisini doğrulamaya çalışıyorum. –
@KyleFalconer, şemanınız geçerli. Bağlandığınız doğrulayıcıyı denedim. Sanırım sahip olduğunuz problem, varsayılan olarak "Girdi JSON" alanına "{}" koymasıdır. Bunu bir diziye değiştirmeniz gerekiyor. Araç, hatanın şemada olduğu gibi görünmesini sağlar, ancak aslında geçersiz olan verilerdir. – Jason
Dang, haklısın! Çok teşekkürler! –