2008-12-01 17 views
74

HTTP पर वाईएएमएल के साथ संरचित डेटा भेजते समय उपयोग करने के लिए सबसे उपयुक्त एमआईएमई प्रकार क्या है?वाईएएमएल माइम प्रकार?

का एक स्पष्टीकरण क्यों एक दिए गए विकल्प की सबसे अधिक सराहना की जाएगी।

कोई पंजीकृत application type या text type है जो मैं देख सकता हूं।

उदाहरण:

> GET /example.yaml 

< Content-Type: ???? 
< 
< --- # Favorite movies 
< - Casablanca 
< - North by Northwest 
< - Notorious 

संभावित विकल्पों:

text/yaml 
text/x-yaml 
application/yaml 
application/x-yaml 

उत्तर

42

रूबी ऑन रेल्स एक (source) पाठ/YAML के वैकल्पिक साथ आवेदन/x-YAML उपयोग करता है।

मुझे लगता है कि यह सिर्फ सम्मेलन का मामला है, तकनीकी क्यों नहीं है, अफवाहें।

+0

अजीब से अधिक निश्चित है, "yaml mime" के लिए Google पहली हिट के रूप में एक रूबी लिंक देता है, पाठ/एक्स-यमल और कोई पुरुष नहीं आवेदन/x-yaml – Greg

+51

का टयन यह _quite_ सत्य नहीं है।'टेक्स्ट /' से शुरू होने वाले माइम प्रकारों को आईएसओ -885 9 -1 के रूप में संसाधित किया जाना चाहिए जब तक कि कोई अन्य माइम प्रकार स्पष्ट रूप से घोषित न हो (उदा। 'टेक्स्ट/एचटीएमएल; अक्षरसेट = यूटीएफ -8')। 'अनुप्रयोग /' से शुरू होने वाले माइम प्रकारों को यूटीएफ -8 के रूप में संसाधित किया जाता है जब तक कि कोई अन्य माइम प्रकार स्पष्ट रूप से घोषित नहीं किया जाता है। उदाहरण के लिए, 'text/x-yaml' टेक्स्ट/x-yaml के दौरान यूटीएफ -8 अक्षरों का उपयोग नहीं कर सकता; charset = utf-8' और 'application/x-yaml' कर सकते हैं। आईआईआरसी, यह आरएफसी 3023 में परिभाषित किया गया है। –

+0

@Ryan: धन्यवाद, अच्छी जानकारी। क्या यह वाईएएमएल पर लागू होता है? यह एक्सएमएल नहीं है ... –

14

मैं कहेंगे पाठ/x-YAML:

आवेदन से अधिक पाठ, क्योंकि यह एक मानव पठनीय

YAML से अधिक एक्स-YAML है क्योंकि यह माइम प्रकार का पंजीकृत सूची में नहीं स्वीकार किया गया है ।

संपादित करें:

शीर्ष स्तर के मीडिया प्रकार "पाठ" माइम संस्थाओं पर कुछ प्रतिबंध है और वे [RFC2045] में वर्णित हैं और [RFC2046: RFC 3023 (एक्सएमएल मीडिया प्रकार) से ]। विशेष रूप से, यूटीएफ -16 परिवार, यूसीएस -4, और यूटीएफ -32 की अनुमति नहीं है ( HTTP [RFC2616] को छोड़कर, जो एक एमआईएम-जैसे तंत्र का उपयोग करता है)।

दिलचस्प ... बिल्कुल यकीन नहीं है कि इसका क्या अर्थ है, लेकिन विचार के लिए भोजन।

+1

यह मानव पठनीय है लेकिन इसका इरादा अनुप्रयोगों को संवाद करना है ... एक्सएमएल –

+0

और पाठ के तहत भी है। ऐसा लगता है कि आपको टेक्स्ट/एक्स-यमल और एप्लिकेशन/एक्स-यमल दोनों रखना होगा ... http://www.rfc-editor.org/rfc/rfc3023.txt –

+0

इसके लायक होने के लिए, यही वह है जो Django TastyPie REST कार्यान्वयन समझता है। –

-10

मुझे पता है कि यह बदसूरत है, लेकिन यदि आप इसे ब्राउज़र में प्रदर्शित करना चाहते हैं और इसे सही रूप से स्वरूपित करना चाहते हैं तो टेक्स्ट/सादे का उपयोग करें - उपरोक्त सभी आईई या फ़ायरफ़ॉक्स में डाउनलोड के लिए डिफ़ॉल्ट होंगे।

5

"x-" मीडिया प्रकार निराश हैं, RFC 4288, Section 3.4 देखें। करने के लिए सही काम निजी पेड़, विक्रेता पेड़, या वास्तव में उचित मीडिया प्रकार पंजीकरण का प्रयास करना है।

+0

तो यह 'एप्लिकेशन/vnd.yaml' या 'text/vnd.yaml' होगा (पाठ बेहतर लगता है) – wires

+0

पूरी तरह से सत्य भी नहीं है। आईएनएए के साथ पंजीकरण के बिना उपयोग के लिए एकमात्र उप प्रकार का पेड़ जिसका उद्देश्य 'x.' है। 'vnd.' और' prs.' पंजीकरण की आवश्यकता है। Https://tools.ietf.org/html/rfc6838#section-3.2 और https://tools.ietf.org/html/rfc6838#section-3.3 देखें। – aef

11

हालांकि एक और जवाब स्वीकार कर लिया गया, समीक्षा मीडिया प्रकार जिसमें बेन हैरिस, कैम्ब्रिज विश्वविद्यालय सूचना सेवा, जुलाई 2015 में YAML टीम की ओर से प्रस्तावित के लिए IANA मेलिंग सूची पर इस Proposed media type registration for YAML धागा देखें मीडिया प्रकार: text/vnd.yaml (सुझाव) पदावनत उपनाम के साथ : text/yaml text/x-yaml application/x-yaml कि अभी भी प्रस्ताव है/लंबित (धागा प्रस्ताव की स्थिति का संकेत नहीं है) तो यह जवाब नहीं दूसरों :-)

+2

ऐसा लगता है कि प्रस्ताव जनवरी 2018 के रूप में कहीं भी नहीं चला है, और लेखक से संपर्क करने के मेरे प्रयासों का अनुत्तरित नहीं हुआ है – djb