2010-10-24 21 views
6

1) क्या वेब सेवा प्रतिक्रिया के लिए सही माइम प्रकार सेट करना महत्वपूर्ण है?आरईएसटी - वेब सेवा प्रतिक्रिया - माइम प्रकार?

2)
ए के लिए सही माइम प्रकार क्या है) एक्सएमएल प्रतिक्रिया?

बी) JSON प्रतिक्रिया?

application/xml 
text/xml 
application/json 
application/x-javascript 
text/javascript 
text/x-javascript 
text/x-json 

उत्तर

7

1) क्या वेब सेवा प्रतिक्रिया के लिए सही माइम प्रकार सेट करना महत्वपूर्ण है?

बिल्कुल हां। यदि आप एक वास्तविक आरईएसटी एपीआई कर रहे हैं तो आपके द्वारा वापस आने वाले विभिन्न मीडिया प्रकारों का दस्तावेज आपके एपीआई विनिर्देश का एक महत्वपूर्ण हिस्सा है।

2) ए के लिए सही माइम प्रकार क्या है, ए) एक्सएमएल प्रतिक्रिया? बी) जेएसओएन प्रतिक्रिया?

एक वास्तविक आरईएसटी सेवा के लिए, यह आपके एपीआई के विवरण और आपके सामग्री-प्रकार के रूप में परिभाषित किए गए विवरणों पर निर्भर करता है।

एक उदाहरण (this excellent article कि पूर्ण रूप से पढ़ने लायक है से लिया गया) के रूप में, एक बैंक application/vnd.bank.org.account+xml के बैंक खातों के लिए एक सामग्री-प्रकार को परिभाषित कर सकते हैं। ध्यान दें कि एमआईएमई प्रकार "+xml के साथ समाप्त होता है, और RFC 3023 के अनुसार, एक्सएमएल प्रोसेसर (XMLHttpRequest सहित) ऐसे प्रतिनिधित्व को संभाल सकता है जैसे कि यह एक्सएमएल है"। एक ही बैंक भी XML का उपयोग एक बैंक हस्तांतरण, इस बार application/vnd.bank.org.transer+xml

4

यदि आप कोई एमआईएमई प्रकार सेट नहीं करते हैं, तो संसाधन रिसीवर द्वारा सही ढंग से व्याख्या नहीं किया जाएगा।

क्रमशः text/xml और application/json का उपयोग करें।

+7

ध्यान दें कि 'टेक्स्ट/एक्सएमएल' और' एप्लिकेशन/एक्सएमएल' का थोड़ा अलग उपयोग है। 'टेक्स्ट/एक्सएमएल' एक एक्सएमएल प्रारूप इंगित करता है जो मुख्य रूप से मानव-पठनीय/समझ में आता है। यद्यपि ठीक है, बस एक्सएमएल आउटपुट के इच्छित उपयोग पर निर्भर करता है। बोल्टक्लॉक के लिए – BoltClock

+0

+1। मैं वही लिखना चाहता था, लेकिन मैंने उनकी टिप्पणी देखी। आरएफसी 3023 देखें (http://www.ietf.org/rfc/rfc3023.txt देखें) और "आकस्मिक उपयोगकर्ताओं द्वारा पठनीय" की खोज करें। लिंक http://xml.silmaril.ie/developers/serversoftware/ में लघु रूप से आरएफसी 3023 से मुख्य जानकारी है। – Oleg

+1

उचित सामग्री प्रकारों का उपयोग आरईएसटी का केंद्रीय किरायेदार है, इसलिए जेनेरिक एक्सएमएल और जेसन प्रकार अनुचित हैं। अगर ओपी ने आरपीसी शैली सेवाओं के बारे में पूछा तो आपका जवाब ठीक होगा। लेकिन मुझे लगा कि दूसरे दो उत्तरों अधिक सही थे, इसलिए उन्हें एक समान पैर पर रखने के लिए मैंने दूसरों को ऊपर उठाने के अलावा अपना जवाब वोट दिया। –

1

एमआईएम प्रकार रिसीवर द्वारा सही व्याख्या के लिए महत्वपूर्ण है।

क) application/xml या text/xml

ख) आवेदन/json

MIME Media Types

+0

मुझे लगता है कि टेक्स्ट/सादा दोनों के साथ रहना सबसे अच्छा है! – 001

+0

यदि रिसीवर एप्लिकेशन किसी भी चीज़ के लिए प्रतिक्रिया माइम प्रकार का उपयोग नहीं करता है, तो आप किसी भी माइम प्रकार का उपयोग कर सकते हैं। सर्वोत्तम प्रथाओं के लिए आपको सही माइम प्रकार सेट करना होगा। – ReinaldoNS

+0

यदि आप पाठ/सादे ब्राउज़र को उदाहरण के लिए करते हैं तो यह नहीं पता होगा कि इसे सही तरीके से कैसे प्रदर्शित किया जाए। – krico

3

1) यह एक वेब सेवा प्रतिक्रिया के लिए सही माइम प्रकार निर्धारित करने के लिए महत्वपूर्ण है?

हां। हालांकि, यह वास्तव में इस बात पर निर्भर है कि सामग्री को संसाधित करने के लिए प्राप्तकर्ता की अपेक्षा या कॉन्फ़िगर किया गया है। सामग्री के बारे में आउट-ऑफ-बैंड जानकारी का उपयोग करके बनाया गया क्लाइंट सामग्री प्रकार को अनदेखा करना चुन सकता है या क्लाइंट सामग्री प्रकार के आधार पर प्रस्तुति को उचित प्रसंस्करण मॉड्यूल में प्रस्तुत करने के लिए सामग्री-प्रकार मेटाडेटा का उपयोग कर सकता है। सामग्री-प्रकार किसी क्लाइंट को सामग्री की समझ को वास्तविक सामग्री में देखने के बिना सक्षम बनाता है। इसके अलावा, चूंकि आपने आरईएसटी से संबंधित अपने प्रश्न को चिह्नित किया है, इसलिए आरईएसटी की स्वयं वर्णनात्मक बाधा को समझना महत्वपूर्ण है और इस बाधा को स्वीकार करने के लिए मीडिया प्रकार किस भूमिका निभाते हैं। यदि आप स्वयं-वर्णनात्मकता के बारे में और जानना चाहते हैं, तो section 5.2.1 of Roy's dissertation पढ़ें।

2) ए के लिए सही माइम प्रकार क्या है, ए) एक्सएमएल प्रतिक्रिया?

बी) JSON प्रतिक्रिया?

application/xml text/xml आवेदन/json आवेदन/x-जावास्क्रिप्ट पाठ/जावास्क्रिप्ट पाठ/x-जावास्क्रिप्ट पाठ/x-jsontext/x-json

उपरोक्त सभी सामग्री प्रकार सामान्य हैं और क्लाइंट को यह जानकारी देने के अलावा कोई और जानकारी नहीं देता है कि सामग्री JSON या XML है या नहीं। आपको जो चाहिए वह आपके आवेदन के लिए विशिष्ट सामग्री-प्रकार है जो न केवल आपके क्लाइंट को प्रारूप के बारे में बताता है बल्कि अर्थशास्त्र का वर्णन करता है और सामग्री को कैसे संसाधित करता है। के बीच आवेदन/xxx और पाठ/xxx अंतर का सवाल है, RFC 3023 राज्यों निम्नलिखित:

तो एक XML दस्तावेज है कि है, असंसाधित, स्रोत XML दस्तावेज़ आकस्मिक उपयोगकर्ताओं द्वारा पढ़ी जा सकती है, text/xml है आवेदन/एक्सएमएल के लिए बेहतर।MIME उपयोगकर्ता एजेंट (और वेब उपयोगकर्ता एजेंट) टेक्स्ट/xml के लिए स्पष्ट समर्थन नहीं है, उदाहरण के लिए, XML MIME इकाई को सादा पाठ के रूप में प्रदर्शित करके उदाहरण के लिए टेक्स्ट/सादा, के रूप में इसका इलाज किया जाएगा। आवेदन/xml बेहतर है जब एक्सएमएल एमआईएम इकाई आकस्मिक उपयोगकर्ताओं द्वारा अपठनीय है। मैंने कुछ चर्चाओं में पढ़ा है कि पाठ/xml भविष्य में बहिष्कृत हो सकता है लेकिन मुझे यकीन नहीं है कि उसमें से।

JSON के लिए, सही एमआईएम प्रकार एप्लिकेशन/जेसन है। SO question देखें।

0

1 के एक सामग्री-प्रकार) यह एक वेब सेवा प्रतिक्रिया के लिए सही माइम प्रकार निर्धारित करने के लिए महत्वपूर्ण है का उपयोग करते हुए प्रतिनिधित्व करने के लिए कर सकते हैं?

हाँ, समान इंटरफ़ेस/स्वयं वर्णनात्मक संदेश बाधा के कारण हां। संदेशों को संसाधित करने के लिए आवश्यक सभी जानकारी होनी चाहिए।

2) एक के लिए सही माइम प्रकार क्या है,

यह ग्राहक क्या पूछता है पर निर्भर करता है। आपको स्वीकृति हेडर की जांच करनी है। हम आमतौर पर स्थिर फ़ाइलों की सेवा करके application/xml सेवाओं और text/xml का उपयोग करते हैं। लेकिन यह वास्तव में कोई फर्क नहीं पड़ता।

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

संबंधित मुद्दे