2012-08-15 17 views
29

कुछ संसाधनों के लिए, मेरे RESTful सर्वर केवल सामग्री शरीर के रूप में JSON ऑब्जेक्ट के साथ PUT और POST अनुरोध इस प्रकार application/x-www-form-urlencoded या multipart/form-data या कुछ और के बजाय application/json के Content-Type की आवश्यकता होती है स्वीकार करता है,।HTTP स्थिति कोड

खराब जेएसओएन (या इसकी कमी) डीएसगिंग उद्देश्यों के लिए JSON पार्सर द्वारा उठाए गए अपवाद से सीधे त्रुटि संदेश के साथ 400 लौटाता है।

कौन सा HTTP त्रुटि कोड का अर्थ है कि क्लाइंट ने एक अस्वीकार्य Content-Type के साथ अनुरोध भेजा है, भले ही सर्वर तकनीकी रूप से अनुरोध सामग्री को पार्स कर सके?

+1

एक निश्चित जवाब के लिए यहाँ देखें: http://stackoverflow.com/questions/19417553/what-if-any-http-status-code-is-returned-when-a-mime-type- गायब है –

उत्तर

42

यह 415 Unsupported Media Type हो सकता है इस सूची के अनुसार: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16

+0

मैं अभी भी सोच रहा हूं कि "अस्वीकृत सामग्री प्रकार" और "असमर्थित मीडिया प्रकार" के बीच कोई अंतर है - जहां वास्तविक सामग्री (घोषित सामग्री से संभावित रूप से अलग) इरादे से मेल नहीं खाती है। – blackstrype

+0

415 सही है, लेकिन आपको आरएफसी 2616 का उपयोग नहीं करना चाहिए; इसे आरएफसी 7231 द्वारा अप्रचलित कर दिया गया है। –

+11

'415 असमर्थित मीडिया प्रकार' का अर्थ है क्लाइंट ने * प्रारूप * डेटा को उस प्रारूप में प्रदान किया है जो सर्वर समर्थित नहीं है (जैसा कि अनुरोध के 'सामग्री-प्रकार' शीर्षलेख द्वारा इंगित किया गया है)। उदाहरण के लिए, प्रारूप 'अनुप्रयोग/xml' में संसाधन के साथ' उपयोगकर्ता 'प्रकार का रिकॉर्ड बनाने के लिए' POST' अनुरोध करने का प्रयास कर रहा है लेकिन सर्वर उस संसाधन प्रकार के लिए XML अनुरोधों को संसाधित नहीं कर सकता है। '406 स्वीकार्य नहीं 'का मतलब है कि आने वाला अनुरोध प्रतिक्रिया डेटा को एक विशिष्ट प्रारूप में (जैसा कि' स्वीकार करें 'हेडर द्वारा इंगित किया गया है) जो सर्वर प्रदान नहीं कर सकता है (उदाहरण के लिए, सर्वर को एक्सएमएल के रूप में रिकॉर्ड करना चाहते हैं जब सर्वर केवल JSON प्रदान करता है)। – Anthony

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