2009-09-01 18 views
31

जब कोई ग्राहक खराब डेटा पोस्ट करता है (उदाहरण के लिए पूर्णांक होने पर एक स्ट्रिंग) क्या HTTP स्थिति कोड वापस आना चाहिए?खराब डेटा के लिए HTTP स्थिति कोड

मैं 400 खराब अनुरोध का उपयोग कर रहा हूं, लेकिन जैसा कि मैंने HTTP दस्तावेज़ों पर पढ़ा है जो HTTP प्रोटोकॉल त्रुटियों पर अधिक लागू होते हैं।

मैं एक स्टेटस कोड का उपयोग करना चाहता हूं ताकि फ्लैश और AJAX क्लाइंट प्रतिक्रिया को खराब किए बिना सफलता, खराब डेटा और सर्वर त्रुटि के बीच अंतर कर सकें।

उत्तर

46

यह वही है जो 400 के लिए है। हां, इसका उपयोग खराब HTTP प्रोटोकॉल उपयोग के लिए किया जाता है, लेकिन यह उस उद्देश्य के लिए विशेष रूप से नहीं है।

+1

ओपी के प्रश्न के अनुसार, यदि ग्राहक अपेक्षाकृत एक 'पूर्णांक' के साथ HTTP अनुरोध जारी करता है, तो क्या होगा। हालांकि, मान लें कि वह पूर्णांक उपयोगकर्ता के 'आईडी' का प्रतिनिधित्व करता है। यदि सर्वर उस उपयोगकर्ता को नहीं ढूंढ पा रहा है, तो क्या '400' वापस लौटाया जाना चाहिए? –

+7

404 पर उस उदाहरण में सबसे अच्छी बात होगी @ केविनमेनिथ – DasDave

5

जब ग्राहक सबमिट बटन हिट करता है तो मैं वास्तव में ब्राउज़र में खराब डेटा को जाल करने के इच्छुक हूं।

यदि नहीं, तो मैं 400 वापसी चाहते हैं क्योंकि के रूप में मानक का कहना है:

अनुरोध विकृत वाक्य रचना के कारण सर्वर द्वारा समझा नहीं जा सका। ग्राहक को संशोधन के बिना अनुरोध दोहराना नहीं चाहिए।

+3

आपको शायद दोनों करना चाहिए। ब्राउज़र द्वारा आपके एपीआई का उपयोग करने की कोई गारंटी नहीं है। :) – weberc2

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