मैं एक एपीआई बना रहा हूं जो जेएसओएन के रूप में परिणाम देता है। क्या कोई वर्तमान सर्वोत्तम अभ्यास है कि क्या परिणाम में कुंजी शामिल होनी चाहिए जब मूल्य शून्य है? उदाहरण के लिए:क्या JSON में शून्य मान शामिल हैं
{
"title":"Foo Bar",
"author":"Joe Blow",
"isbn":null
}
या
{
"title":"Foo Bar",
"author":"Joe Blow"
}
के बाद से दूसरा छोटा होता है मैं इस शैली की ओर झुकाव रहा हूँ, लेकिन मुझे यकीन है कि अगर वहाँ एक पसंदीदा शैली है या नहीं नहीं कर रहा हूँ। एक ग्राहक परिप्रेक्ष्य से ऐसा लगता है कि दोनों शैलियों कार्यात्मक रूप से समकक्ष होंगे। प्रत्येक के लिए कोई पेशेवर या विपक्ष?
यह सही ढंग से जवाब देना असंभव है। सही उत्तर आवेदन की आवश्यकताओं पर निर्भर करता है। ओपी ने बस उस उत्तर का चयन किया है जो उसकी आवश्यकताओं के अनुरूप है। यदि आपके एप्लिकेशन को यह जानने के बीच अंतर करने में सक्षम होना चाहिए कि "isbn" शून्य बनाम है या नहीं, तो "isbn" किसी अन्य कारण से सर्वर से नहीं भेजा गया है, तो आपको इसे शामिल करने की आवश्यकता है। – Jacob
@ जैकोब हालांकि मैंने यह नहीं कहा, इस सवाल के साथ मेरा इरादा यह था कि प्रतिक्रिया का प्रतिनिधित्व करने वाला "पूर्ण" JSON वापस किया जा रहा था। जब कोई ग्राहक यह मान सकता है कि दो दृष्टिकोणों के बीच कोई कार्यात्मक अंतर नहीं लगता है।यदि एपीआई चुनिंदा कुंजी/मूल्य वापस नहीं करेगा तो हां यह एक बड़ा अंतर करेगा जिससे दृष्टिकोण लिया गया था। – jjathman
पहले प्रतिनिधित्व का लाभ यह है कि ऑब्जेक्ट स्कीमा संरक्षित है, संपत्ति की उपस्थिति डेटा के आधार पर संदिग्ध नहीं है। दूसरे प्रारूप में यह जानकारी खो गई है। जेएसओएन स्पेक के रूप में प्रारूप को अनिवार्य नहीं है AFAIK –