2013-10-14 12 views
9

सबसे पहले, कोई पार-क्षेत्र समस्या नहीं है।क्यों jQuery एक खाली प्रतिक्रिया के साथ 200 प्रतिक्रिया अजाक्स अनुरोध पर असफल()?

मुझे पता चला कि सर्वर एक खाली सामग्री निकाय प्रतिक्रिया देता है, jQuery इसे असफल मानते हैं()?

ऐसा क्यों है?

+1

यह एक पार्स त्रुटि की तरह दिखता है ... क्या आप एक त्रुटि हैंडलर जैसे त्रुटि: फ़ंक्शन (jqXhr, स्थिति, त्रुटि) { अलर्ट (स्थिति + ':' + error + ':' + jqXhr.responseText) जोड़ सकते हैं } ' –

+0

कोई ब्राउज़र कंसोल त्रुटियां? – karthikr

+0

क्या आप 'डेटा टाइप' का उपयोग कर रहे हैं? – WynandB

उत्तर

14

आप jQuery> = 1.9 एक खाली JSON उत्तर अस्वीकार कर दिया जाएगा उपयोग कर रहे हैं, API documentation के अनुसार:

The JSON data is parsed in a strict manner; any malformed JSON is rejected and a parse error is thrown. As of jQuery 1.9, an empty response is also rejected; the server should return a response of null or {} instead.

12

WynandB सही है, लेकिन वहाँ वैकल्पिक समाधान है: बजाय सर्वर वापसी HTTP 204 No Content है , जो jQuery को पार्सिंग त्रुटि को अनदेखा कर देगा।

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