2010-11-19 8 views
12

मेरे पास कुछ XML दस्तावेज़ हैं जिन्हें मैं सिनात्रा से सर्वर करना चाहता हूं। मैंने कुछ खोज किया लेकिन कुछ भी विशिष्ट नहीं मिला। मुझे बिल्डर मणि मिला लेकिन मैं स्क्रैच से दस्तावेज़ बनाना नहीं चाहता हूं।एक्सएमएल दस्तावेज़ों की सेवा के लिए मैं सिनात्रा का उपयोग कैसे करूं?

मैं इस

get '/' 
    xml = '<?xml version=\"1.0\" encoding=\"UTF-8\"?> <name>My name</name> <age>90</age>' 
    body xml 
end 

की तरह कुछ करने की कोशिश की लेकिन वह यह चारों ओर HTML टैग जोड़ देगा। शायद यह वास्तव में कुछ बुनियादी है जो मुझे याद आ रही है। क्या आप मुझे सही दिशा में इंगित कर सकते हैं?

+0

प्राप्त की '/' एक्सएमएल = "मेरा नाम है 90" शरीर एक्सएमएल अपने अपेक्षित आउटपुट क्या है? – BlueDog

+0

पोस्ट xml टैग लपेट रहा है। यह – Luis

+0

"नाम" "90" Luis

उत्तर

31

यह सिनात्रा के साथ बहुत सरल है:

get '/' do 
    content_type 'text/xml' 
    "<name>Luis</name><age>99</age>" 
end 

प्राप्त करें '/' प्रतिक्रिया सही content_type साथ एक्सएमएल "<name>Luis</name><age>99</age>" हो जाएगा।

+0

मुझे पता था कि यह कुछ आसान था ... इसके बारे में सोचना चाहिए था! – Luis

+1

आपको उसका जवाब स्वीकार करना चाहिए। :) (मतदान नियंत्रण के तहत लिल चेक मार्क पर क्लिक करें) –

+1

हां, आपको जवाब स्वीकार करना चाहिए! :) – 19WAS85

2

जैसा कि नीचे दिया गया है, वैगनर के सामग्री प्रकार को जोड़ने का उत्तर, आपको केवल एक एक्सएमएल रूट तत्व http://www.w3schools.com/xml/xml_syntax.asp शामिल करना होगा अन्यथा सिनात्रा एक अपवाद उठाएगा।

तो पूरा जवाब है:

get '/' 
    content_type 'text/xml' 
    '<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><name>My name</name> <zage>90</age></root>' 
end 
संबंधित मुद्दे