मैं JSON
डेटा प्रकार का उपयोग कर POST
विधि के साथ प्राप्तकर्ता सर्वर पर आईओएस पर बनाई गई एक नई वस्तु भेजना चाहता हूं। आईओएस में सर्वर से डेटा प्राप्त करने के बारे में मुझे पता है, यह है कि सभी JSON
हैंडलिंग को आईओएस 5 की शुरूआत के साथ ऐप्पल द्वारा सरल बनाया गया था। लेकिन JSON ऑब्जेक्ट्स प्राप्त करने के लिए contradistinction में, पोस्ट करना उन चीज़ों को वास्तव में वर्णित नहीं किया गया है जो मुझे मिल सकता है ...मैं आईओएस 5 में सर्वर पर JSON डेटा ऑब्जेक्ट कैसे पोस्ट करूं?
पहला कदम मैं कोशिश करते हैं और समस्या के रूप में निम्नानुसार देखा हल करने के लिए ले लिया:
//build an info object and convert to json
NSDictionary *newDatasetInfo = [NSDictionary dictionaryWithObjectsAndKeys:name, @"name", language, @"language", nil];
//convert object to data
NSData* jsonData = [NSJSONSerialization dataWithJSONObject:newDatasetInfo options:kNilOptions error:&error];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:someURLSetBefore];
[request setHTTPMethod:@"POST"];
// any other things to set in request? or working this way?
[[NSURLConnection alloc] initWithRequest:request delegate:self];
// What to do with NSURLConnection? Or how to send differently?
लेकिन मैं सच में पता नहीं कैसे करने के लिए एक पोस्ट विधि का उपयोग कर किसी सर्वर के लिए एक JSON ऑब्जेक्ट भेज बिल्कुल। क्या कोई मेरी मदद कर सकता है?
आप संभवतः क्या अपने कोड में हो रहा है पर विस्तृत सकता है? मैंने इसे अपने ऐप में अभी इस्तेमाल किया है, लेकिन मैं ईमानदारी से यह नहीं जानता कि यह क्या कर रहा है। मैं शब्दकोश को समझता हूं और इसे JSON के लिए डेटा में बदलता हूं, लेकिन URLRequest और URLConnection के साथ सबकुछ मेरे लिए अज्ञात है। कोई स्पष्टीकरण बहुत अच्छा होगा! – Jonathan
एक NSURLRequest मूल रूप से आपके वेब fetch के गुण सेट करने के लिए एक वस्तु है। सामान्य fetches में आपके पास सबसे अधिक उपयोग किए गए डिफ़ॉल्ट सेट स्वचालित रूप से सेट होते हैं, लेकिन जैसा कि मैं डेटा भेजना चाहता हूं, मैं HTTP POST विधि का उपयोग करना चाहता हूं और क्योंकि मैं एक JSON ऑब्जेक्ट प्राप्त करना चाहता हूं, मैं सामग्री-प्रकार को सेट करके सर्वर को यह बता रहा हूं और जेएसओएन प्रारूप में HTTP शीर्षलेख फ़ील्ड स्वीकार करें। HTTP प्रोटोकॉल और विशेष रूप से HTTP शीर्षलेख के बारे में अधिक जानने के लिए बस उनके लिए खोजें या यहां पढ़ें http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol और यहां http://en.wikipedia.org/wiki/List_of_HTTP_header_fields। – CGee
NSURLConnection के बारे में और जानने के लिए मुझे लगता है कि सबसे अच्छा तरीका है एप्पल दस्तावेज़ीकरण में अपने वर्ग संदर्भ को पढ़ने के लिए यहां https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/ Reference.html। आम तौर पर मैं केवल आपको पहले एप्पल दस्तावेज में देखने के लिए प्रोत्साहित कर सकता हूं, क्योंकि यह इन चीजों को सीखने के लिए एक महान (और निश्चित रूप से अद्यतित) स्रोत है। – CGee