2009-08-24 8 views
8
का उपयोग कर सामग्री प्रकार सेट करने के लिए

मूल रूप से मैंकैसे जब initWithContentsOfUrl

सामग्री प्रकार सेट करना चाहते हैं: आवेदन/json;

डॉट नेट वेब सेवा को कॉल करने के लिए और इसे एक आईफोन एप्लिकेशन में जेसन वापस कर दिया है।

फिलहाल मैं

 
NSString * jsonres = [[NSString alloc] initWithContentsOfURL:url]; 

क्या मैं आदेश एक अवरुद्ध अनुरोध जारी करने के बजाय क्या ज़रूरत है है?

उत्तर

11

आपको NSURLMutableRequest का उपयोग करने की आवश्यकता है, यहां आप सामग्री-प्रकार और सॉर्ट के लिए हेडर जोड़ सकते हैं, यहां आप अपना अनुरोध सेट अप करने के बाद ar eference, http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Classes/NSMutableURLRequest_Class/Reference/Reference.html#//apple_ref/occ/cl/NSMutableURLRequest है, आप इस विधि का उपयोग करके मूल्य जोड़ सकते हैं - (शून्य) addValue: (एनएसएसटींग *) मूल्य एचटीटीपी हैडर फ़ील्ड: (एनएसएसटींग *) फ़ील्ड

[request setValue:@"application/json; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; 
+0

हाँ, मुझे लगता है कि यह ऐसा करेगा। शीघ्र जवाब देने के लिए ध्न्यवाद! – Andiih

+1

हालांकि यह अवरुद्ध शैली अनुरोध नहीं है, इसके बजाय डेलगेट्स और कॉलबैक का उपयोग करना - जिसमें कुछ पुन: आर्किटेक्चरिंग शामिल होगी! – Andiih

+0

ब्लोकिंग शैली के लिए आपको बस एक सिंक कॉल करना होगा (इस माफी का उल्लेख करना भूल गया है) आप NSRLConnections विधि का उपयोग कर सकते हैं जिसे + (NSData *) भेज दिया जाता है सिंक्रोनस रिवेस्ट: (NSURLRequest *) अनुरोध वापसी रिस्पॉन्स: (NSURLResponse **) प्रतिक्रिया त्रुटि: (NSError **) त्रुटि, एक लिंक है http://developer.apple.com/iphone/library/documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html#//apple_ref/occ/clm/NSURLConnection/sendSynchronousRequest: वापसी प्रतिक्रिया: त्रुटि: – Daniel