साइट आइकन हेलबाइट्स

JSON स्कीमा के लिए गाइड

JSON स्कीमा

JSON स्कीमा के लिए गाइड

JSON स्कीमा में जाने से पहले, JSON और JSON स्कीमा के बीच के अंतर को जानना महत्वपूर्ण है।

JSON

जेएसओएन जावास्क्रिप्ट ऑब्जेक्ट नोटेशन के लिए छोटा है, और यह एक भाषा-स्वतंत्र डेटा प्रारूप है जो एपीआई अनुरोध और उत्तर भेजने के लिए उपयोग करता है। JSON लोगों और मशीनों के लिए समान रूप से पढ़ना और लिखना आसान है। JSON एक टेक्स्ट-आधारित प्रारूप है जो भाषा (भाषा स्वतंत्र) के लिए बाध्य नहीं है।

JSON स्कीमा

JSON स्कीमा JSON डेटा संरचना को सत्यापित करने के लिए एक उपयोगी उपकरण है। JSON की संरचना निर्दिष्ट करने के लिए, JSON-आधारित स्वरूप का उपयोग करें। इसका उद्देश्य यह सुनिश्चित करना है कि JSON डेटा स्वीकार्य है। हमारे एप्लिकेशन के JSON डेटा के लिए कन्वेंशन को स्कीमा का उपयोग करके परिभाषित किया जा सकता है।

JSON स्कीमा विनिर्देश के तीन मुख्य खंड हैं:

JSON हाइपर-स्कीमा:

JSON हाइपर-स्कीमा एक JSON स्कीमा भाषा है जिसका उपयोग JSON दस्तावेज़ों को हाइपरलिंक्स के साथ लेबल करने के लिए किया जा सकता है और HTTP जैसे टेक्स्ट-आधारित वातावरणों के माध्यम से बाहरी JSON संसाधनों को संसाधित करने और बदलने के निर्देश दिए जा सकते हैं। क्लिक यहाँ उत्पन्न करें JSON हाइपर-स्कीमा के बारे में अधिक जानने के लिए।

JSON स्कीमा कोर:

यह JSON दस्तावेज़ों को लेबल करने और मान्य करने के लिए नियमों का एक समूह है। 

JSON स्कीमा कोर:

JSON स्कीमा सत्यापन:

JSON स्कीमा पर आधारित सत्यापन उदाहरण डेटा की संरचना पर सीमाएँ लगाता है। उसके बाद, गैर-अभिकथन वाले कोई भी कीवर्ड करें- , जैसे वर्णनात्मक मेटाडेटा और उपयोग के संकेत, एक उदाहरण स्थिति में जोड़े जाते हैं जो सभी घोषित बाधाओं को पूरा करता है। 

Newtonsoft का JSON स्कीमा वैलिडेटर टूल एक ऐसा टूल है जिसका उपयोग आप सीधे अपने ब्राउज़र में कर सकते हैं, वह भी निःशुल्क। आप अपने JSON स्कीमा की संरचना का परीक्षण करने के लिए इस टूल का उपयोग कर सकते हैं। इस पृष्ठ में आपको आरंभ करने के लिए नियंत्रण और स्पष्टीकरण शामिल हैं। इस तरह, यह देखना आसान है कि अपनी JSON संरचना को कैसे सुधारें।

हम JSON स्कीमा वैलिडेशन टूल का उपयोग करके अपने JSON ऑब्जेक्ट की जांच कर सकते हैं:


हमारे पास आयु सत्यापन (न्यूनतम = 20 और अधिकतम = 40) है जैसा कि ऊपर की आकृति में दिखाया गया है। कोई त्रुटि नहीं पाई गई।

यदि आयु सत्यापन गलत तरीके से दर्ज किया गया था तो यह एक त्रुटि प्रदर्शित करता है।

एक JSON स्कीमा का निर्माण

आइए JSON स्कीमा का एक उदाहरण देखें कि हम किस बारे में बात कर रहे हैं। उत्पाद सूची का वर्णन करने वाला एक मूल JSON ऑब्जेक्ट इस प्रकार है:

इसका JSON स्कीमा इस प्रकार लिखा जा सकता है:

एक JSON स्कीमा एक JSON दस्तावेज़ है, और वह दस्तावेज़ एक वस्तु होना चाहिए। कीवर्ड JSON स्कीमा द्वारा निर्दिष्ट ऑब्जेक्ट सदस्य/विशेषताएं हैं। JSON स्कीमा में "कीवर्ड" किसी ऑब्जेक्ट में कुंजी / मान संयोजन के "कुंजी" भाग को संदर्भित करता है। JSON स्कीमा लिखने में अधिकांश भाग के लिए किसी ऑब्जेक्ट के भीतर किसी विशेष "कीवर्ड" को मैप करना शामिल है। 

आइए अपने उदाहरण में हमारे द्वारा उपयोग किए गए कीवर्ड्स पर करीब से नज़र डालें: 

JSON स्कीमा जिसके लिए संसाधन का स्कीमा अनुपालन करता है, इस विशेषता द्वारा लिखा जाता है। यह स्कीमा ड्राफ्ट v4 मानक के अनुसार लिखा गया है, जैसा कि "द्वारा निर्दिष्ट किया गया है"$ स्कीमा"कीवर्ड। यह आपके स्कीमा को वर्तमान संस्करण में वापस आने से रोकता है, जो पुराने के साथ संगत हो भी सकता है और नहीं भी।

"शीर्षक" तथा "विवरण”कीवर्ड केवल व्याख्यात्मक हैं; वे जाँचे जा रहे डेटा पर कोई सीमा नहीं लगाते हैं। ये दो कीवर्ड स्कीमा के उद्देश्य का वर्णन करते हैं: यह एक उत्पाद का वर्णन करता है।

"टाइप” कीवर्ड हमारे JSON डेटा की पहली सीमा स्थिति को परिभाषित करता है; यह एक JSON ऑब्जेक्ट होना चाहिए। अगर हम सभी स्कीमाओं के लिए टाइप सेट नहीं करते हैं, तो कोड काम नहीं करेगा। कुछ सामान्य प्रकार "संख्या" "बूलियन" "पूर्णांक" "अशक्त" "वस्तु" "सरणी" "स्ट्रिंग" हैं।

JSON स्कीमा निम्नलिखित पुस्तकालयों द्वारा समर्थित है:

भाषा पुस्तकालय
C WJElement
अजगर jschon
PHP जेसन स्कीमा को देखें
जावास्क्रिप्ट AJV
Go gojsonschema
Kotlin मीडिया-सत्यापनकर्ता
माणिक JSONSस्कीमर

JSON (सिंटेक्स)

आइए JSON के मूलभूत सिंटैक्स पर एक संक्षिप्त नज़र डालें। JSON सिंटैक्स जावास्क्रिप्ट सिंटैक्स का एक सबसेट है जिसमें निम्नलिखित तत्व शामिल हैं:

निम्नलिखित दो डेटा संरचनाएं JSON द्वारा समर्थित हैं:

JSON (ऑब्जेक्ट)

एक JSON स्कीमा एक JSON ऑब्जेक्ट है जो किसी भिन्न JSON ऑब्जेक्ट के प्रकार और संरचना को रेखांकित करता है। एक जावास्क्रिप्ट ऑब्जेक्ट एक्सप्रेशन जावास्क्रिप्ट रनटाइम वातावरण में एक JSON ऑब्जेक्ट का प्रतिनिधित्व कर सकता है। मान्य स्कीमा ऑब्जेक्ट के कुछ उदाहरण इस प्रकार हैं:

स्कीमा माचिस
{} कोई मान
{टाइप: 'ऑब्जेक्ट'} एक जावास्क्रिप्ट वस्तु
{प्रकार: 'संख्या'} एक जावास्क्रिप्ट नंबर
{प्रकार: 'स्ट्रिंग'} एक जावास्क्रिप्ट स्ट्रिंग

उदाहरण के लिए:

एक नई वस्तु बनाना जो खाली है:

वर JSON_Obj = {};

नई वस्तु निर्माण:

var JSON_Obj = नई वस्तु ()

JSON (एक्सएमएल के साथ तुलना)

JSON और XML भाषा-स्वतंत्र मानव-पठनीय प्रारूप हैं। वास्तविक दुनिया के परिदृश्यों में, वे दोनों बना सकते हैं, पढ़ सकते हैं और डिकोड कर सकते हैं। निम्नलिखित मानदंडों के आधार पर, हम JSON की तुलना XML से कर सकते हैं।

जटिलता

क्योंकि XML JSON से अधिक जटिल है, प्रोग्रामर JSON को पसंद करते हैं।

सरणियों का उपयोग

XML का उपयोग संरचित डेटा को व्यक्त करने के लिए किया जाता है; हालाँकि, XML सरणियों का समर्थन नहीं करता है, लेकिन JSON करता है।

पदच्छेद

JSON की व्याख्या JavaScript के eval फ़ंक्शन का उपयोग करके की जाती है। JSON के साथ उपयोग किए जाने पर eval वर्णित वस्तु लौटाता है।

उदाहरण:

JSON एक्सएमएल
{

   "कंपनी": फेरारी,

   "नाम": "जीटीएस",

   "कीमत": 404000

}

 

फेरारी 

जीटी 

404000 

JSON स्कीमा लाभ

JSON को मानव- और मशीन-पठनीय भाषा में विक्षेपित करने के लिए डिज़ाइन किया गया है। हालांकि, कुछ फाइन-ट्यूनिंग के बिना, यह न तो हो सकता है। JSON स्कीमा में JSON को मशीनों और मनुष्यों दोनों के लिए अधिक समझने योग्य बनाने का लाभ है।

JSON स्कीमा का उपयोग करने से कई क्लाइंट-साइड अपडेट की आवश्यकता भी समाप्त हो जाती है। सामान्य HTML कोड की सूची बनाना और फिर उन्हें क्लाइंट साइड पर लागू करना क्लाइंट-साइड बनाने का एक विशिष्ट लेकिन गलत तरीका है API क्षुधा। हालाँकि, यह सबसे बड़ी रणनीति नहीं है क्योंकि सर्वर-साइड में परिवर्तन से कुछ कार्यात्मकताओं में खराबी आ सकती है।

JSON स्कीमा का मुख्य लाभ विभिन्न प्रकार की प्रोग्रामिंग भाषाओं के साथ-साथ सत्यापन की सटीकता और निरंतरता के साथ इसकी अनुकूलता है।

JSON स्कीमा ब्राउज़रों की एक विस्तृत श्रृंखला का समर्थन करता है और ऑपरेटिंग सिस्टम, इसलिए JSON में लिखे गए ऐप्स को सभी ब्राउज़र संगत बनाने में अधिक प्रयास नहीं करना पड़ता है। विकास के दौरान, डेवलपर्स कई ब्राउज़रों पर विचार करते हैं, हालांकि JSON में पहले से ही क्षमताएं हैं।

JSON ऑडियो, वीडियो और अन्य मीडिया सहित किसी भी आकार का डेटा साझा करने का सबसे कुशल तरीका है। यह इस तथ्य के कारण है कि JSON सरणियों में डेटा संग्रहीत करता है, जिससे डेटा ट्रांसमिशन आसान हो जाता है। नतीजतन, JSON ऑनलाइन एपीआई और विकास के लिए सबसे अच्छा फ़ाइल स्वरूप है।

जैसे-जैसे एपीआई अधिक सामान्य होते जाते हैं, यह मान लेना तर्कसंगत है कि एपीआई सत्यापन और परीक्षण तेजी से महत्वपूर्ण हो जाएगा। यह अपेक्षा करना भी यथार्थवादी है कि समय बीतने के साथ JSON के अधिक सरल होने की संभावना नहीं है। इसका तात्पर्य यह है कि समय बीतने के साथ-साथ आपके डेटा के लिए एक स्कीमा होना और अधिक महत्वपूर्ण होता जा रहा है। क्योंकि JSON एपीआई के साथ काम करने के लिए मानक फ़ाइल स्वरूप है, JSON स्कीमा एपीआई के साथ काम करने वालों के लिए एक अच्छा विकल्प है।

मोबाइल संस्करण से बाहर निकलें