मैं सामान्य JSs-utils से node.js + json-schema.js का उपयोग कर अपने JSON API को सत्यापित करने का प्रयास कर रहा हूं। बस एक ही सत्यापन आसान था लेकिन एक दूसरे के संदर्भ में सक्षम करने के लिए कई स्कीमा फ़ाइलों को प्रबंधित करने का सही तरीका नहीं मिला।एकाधिक JSON स्कीमा फ़ाइलों का प्रबंधन कैसे करें?
मान लीजिए कि मुझे दो मॉडल & दो एपीआई मिल गए हैं।
// book
{
"type": "object",
"properties": {
"title": { "type": "string" },
"author": { "type": "string" }
}
}
// author
{
"type": "object",
"properties": {
"first_name": { "type": "string" },
"last_name": { "type": "string" }
}
}
// authors API
{
"type": "array",
"items": { "$ref": "author" }
}
// books API: list of books written by same author
{
"type": "object",
"properties": {
"author": { "$ref": "author" }
"books": { "type": "array", "items": { "$ref": "book" } }
}
}
प्रत्येक स्कीमा को अलग फ़ाइल में विभाजित किया जाना चाहिए और ऑनलाइन होना चाहिए? या मैं नीचे की तरह एकल स्कीमा फ़ाइल में गठबंधन कर सकते हैं? यदि यह संभव है, तो मैं स्थानीय स्कीमा का संदर्भ कैसे दे सकता हूं?
// single schema file {
"book": { ... },
"author": { ... },
"authors": { ... },
"books": { ... } }
क्या node.js में अलग स्कीमा फ़ाइलों के साथ ऑब्जेक्ट बनाने का कोई तरीका है? – uzay95
@ uzay95 स्कीमा कक्षाएं नहीं हैं। किसी ऑब्जेक्ट की संरचना को परिभाषित करने और मान्य करने के लिए एक स्कीमा का उपयोग किया जाता है, एक वर्ग प्रारंभिक होने के बाद किसी ऑब्जेक्ट की संरचना को परिभाषित करता है। यदि आपको जेएस में कक्षाओं की आवश्यकता है, तो टाइपस्क्रिप्ट, एटस्क्रिप्ट या ES6 को देखने का प्रयास करें। या बस बाहरी फ़ाइल के भीतर एक मॉड्यूल या कन्स्ट्रक्टर फैक्ट्री विधि डालें जिसमें आप node.js. में शामिल होंगे। –