2015-01-20 6 views

उत्तर

51

मीडिया प्रकार application/vnd.api+json JSON API को संदर्भित करता है। आप इसके बारे में in great detail here पढ़ सकते हैं।

संक्षेप में, JSON एपीआई एक स्वच्छंद और अच्छी तरह से समझाया है:

... कैसे एक सर्वर उन अनुरोध का जवाब चाहिए कि कैसे एक ग्राहक का अनुरोध करना चाहिए कि संसाधनों प्राप्त किए गए या संशोधित किया है, और के लिए विनिर्देश।

+9

यह बहुत अच्छा होगा विक्रेता उपसर्ग के बारे में एक वाक्य ('VND।') @rmhartog के जवाब से इस जवाब में शामिल किया जाना है। – Vasif

29

पहले एक API है विशिष्ट मीडिया प्रकार। विक्रेता उपसर्ग (vnd.) इंगित करता है कि यह इस विक्रेता के लिए कस्टम है। +json इंगित करता है कि इसे JSON के रूप में पार्स किया जा सकता है, लेकिन मीडिया प्रकार JSON के शीर्ष पर आगे अर्थशास्त्र परिभाषित करना चाहिए।

दूसरे का मतलब है कि सामग्री JSON है। यह आम तौर पर बहुत उपयोगी नहीं है, हालांकि, यह परिभाषित नहीं करता है कि JSON मानों का क्या अर्थ है।

इस बारे में पढ़ने के लिए एक अच्छा प्रारंभिक बिंदु Wikipedia पर होगा, लेकिन अधिक जानकारी के लिए आप हमेशा उस पृष्ठ पर संबंधित आरएफसी के लिंक का पालन कर सकते हैं।

10

यदि आप सुनिश्चित नहीं कर रहे हैं, application/json का उपयोग करें - यह सामान्य MIME प्रकार है कि केवल डेटा तुम वापस एक well-formed JSON होने की आवश्यकता है है।


application/vnd.api+json MIME प्रकार (भ्रमित करने वाले नाम) "JSON API" प्रोटोकॉल का उपयोग संचार के लिए आरक्षित है।

"JSON एपीआई" इस संदर्भ में नहीं मतलब किसी भी एपीआई HTTP और JSON के आधार पर करता है। एपीआई बनाने के लिए यह फ्रेमवर्क है जो क्लाइंट को अंतःसंबंधित इकाइयों को लाने और संशोधित करने की अनुमति देता है। उदाहरण के लिए, एक ब्लॉग एप्लिकेशन "जेएसओएन एपीआई" विनिर्देश के अनुरूप एपीआई को कार्यान्वित कर सकता है, जो किसी भी HTTP अनुरोध में मेटाडेटा और टिप्पणियों के साथ किसी दिए गए लेखक द्वारा अंतिम 10 लेख लाने की अनुमति देता है।

विनिर्देश को परिभाषित करता है, विशेष रूप से:

  • विशिष्ट तरीके से एक अनुरोध का गठन किया जाना चाहिए (अर्थातकौन सा यूआरएल पैरामीटर सॉर्टिंग और पेजिनेशन और आउटपुट में शामिल डेटा को नियंत्रित करता है);
  • जवाब में JSON दस्तावेज़ के विशिष्ट संरचना, उदाहरण के लिए:

    एक दस्तावेज़ निम्नलिखित उच्च-स्तरीय सदस्यों में से कम से कम एक शामिल होना चाहिए:

    • data: दस्तावेज़ के "प्राथमिक डेटा "
    • errors: त्रुटि की एक सरणी वस्तुओं
    • meta: एक मेटा उद्देश्य यह है कि गैर मानक मेटा जानकारी शामिल है।

    सदस्य data और errors उसी दस्तावेज़ में सह-अस्तित्व में नहीं होना चाहिए।