दिलचस्प पोस्ट
आप अपने नमक तारों को स्टोर करते हैं? स्क्वायर DIV जहां ऊंचाई व्यूपोर्ट के बराबर है Java 8 Iterable.forEach () बनाम फॉरच लूप मेरी वर्तमान गतिविधि से संगीत चलाने वाले अन्य ऐप्स को कैसे रोकें? कुंजीपटल इनपुट प्राप्त करना मूल्यों के अनुसार हैशमैंट को सॉर्ट करना कॉलिंग पद्धति के बारे में जानकारी प्राप्त करने के लिए उत्पादन कोड में PHP debug_backtrace? कार्य का अपवाद (कार्यस्थल) कार्य पर प्रतीक्षा करने या अपवाद संपत्ति तक पहुंचने के द्वारा या तो मनाया नहीं गया था। नतीजतन, अप्रभावित अपवाद था गतिशील ग्राफिक्स वस्तु चित्रकारी अजगर खोल में पाइस्पर्क आयात करना ब्राउज़र में जावास्क्रिप्ट के माध्यम से एक छवि को कैसे संक्षिप्त करना है? रूबी हैश डुप्लिकेट कुंजी के साथ? के लिए इकाई फ़्रेमवर्क में नेविगेशन गुण क्या हैं? आरम्भिकरण ब्लॉक क्या है? स्वचालित रूप से पाठ बॉक्स नियंत्रण को खड़ी करना

कोको त्रुटि 3840 JSON का उपयोग कर (आईओएस)

मैं किसी सर्वर पर डेटा भेजने का प्रयास कर रहा हूं और JSON प्रारूप में प्रतिक्रिया प्राप्त करता हूं। समस्या यह है कि सर्वर को "सफलता" या "असफल" लौटना पड़ता है लेकिन यह "(रिक्त)" देता है

यहां लौटा दी गई त्रुटि है:

त्रुटि डोमेन = एनएससीकाएअरडायमन कोड = 3840 "ऑपरेशन पूरा नहीं हो सका। (कोको त्रुटि 3840.)" (JSON पाठ सरणी या ऑब्जेक्ट और टुकड़े सेट नहीं होने के विकल्प के साथ शुरू नहीं किया था।) UserInfo = XXXXXXXXX {NSDebugDescription = JSON text सरणी या ऑब्जेक्ट के साथ शुरू नहीं किया और टुकड़ों को सेट करने की अनुमति देने के विकल्प।}

क्या यह संभव है कि सर्वर स्क्रिप्ट में त्रुटि है? कोई उपाय? धन्यवाद!

डेटा भेजने और प्रतिक्रिया प्राप्त करने के लिए यहां मेरा कार्य है:

- (void) putData:(NSString *)parametre valor:(NSString *)valor { NSString *rawString = [NSString stringWithFormat:@"%@=%@", parametre, valor]; NSData *data = [rawString dataUsingEncoding:NSUTF8StringEncoding]; NSURL *url = [NSURL URLWithString:@"http://www.xxx.xxx/xxx.php"]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; [request setHTTPMethod:@"PUT"]; [request setHTTPBody:data]; NSURLResponse *response; NSError *error; NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error]; NSLog(@"responseData: %@ error: %@", json, error); } 

Solutions Collecting From Web of "कोको त्रुटि 3840 JSON का उपयोग कर (आईओएस)"

जब तक आप विकल्प NSJSONReadingAllowFragments को [NSJSONSerialization JSONObjectWithData:options:error:] से पास करते हैं, तो सर्वर से प्रतिक्रिया एक शीर्ष स्तर कंटेनर के साथ मान्य JSON होना चाहिए जो एक सरणी या शब्दकोश है

उदाहरण के लिए:

  { "response" : "Success" } 

पीएस यदि आप अस्थायी शब्दकोश चाहते हैं तो आपको अपने विकल्पों में NSJSONReadingMutableContainers भी शामिल करना होगा।

संभव है कि, आपके सर्वर से प्रतिक्रिया में मान्य JSON शामिल नहीं है।

तकनीकी तौर पर, JSON ऑब्जेक्ट को "सरणी" या "ऑब्जेक्ट (शब्दकोश)" के साथ शुरू होना चाहिए।

इसलिए, आपके सर्वर जो भी लौट रहा है वह नहीं है।

और, आप NSJSONReadingAllowFragments विकल्प का उपयोग करके चाहे JSON को भस्म होने के लिए मजबूर कर सकते हैं।

का उपयोग करके ,

 AFJSONResponseSerializer *responseSerializer = [AFJSONResponseSerializer serializerWithReadingOptions:NSJSONReadingAllowFragments]; 

यदि आप अपने आईओएस डिवाइस पर वीपीएन से कनेक्ट हैं तो आप इस मुद्दे को प्राप्त कर सकते हैं।