2015-11-03 6 views
5

पर पोस्ट करने के लिए अलामोफायर कच्चे जेसन स्ट्रिंग को मैं अलामोफायर के साथ डाल या पोस्ट विधि से कच्चे जेसन स्ट्रिंग कैसे भेज सकता हूं?पोस्ट करने या

मुझे इसके लिए कोई उदाहरण नहीं मिल रहा है।

let params = Mapper().toJSONString(results) // json string with array of objects 

Alamofire.request(.PUT, Config().apiGroup, parameters: params) 

हो रही त्रुटि:

Cannot convert value of type 'String?' to expected argument type '[String : AnyObject]?' 

उत्तर

4

Alamofire [String: AnyObject]? का एक शब्दकोश की उम्मीद के रूप में अपने त्रुटि कहा और अपने कोड के अनुसार आप एक सरणी पारित करने के लिए कोशिश कर रहे हैं, तो आप एक शब्दकोश में यह बजाय बदलना होगा। Alamofire में समारोह request के हस्ताक्षर की जाँच करें:

func request(method: Method, _ URLString: URLStringConvertible, 
      parameters: [String : AnyObject]? = default, 
      encoding: ParameterEncoding = default, 
       headers: [String : String]? = default) -> Request 

Alamofire doc से इस उदाहरण देखें:

let params = Mapper().toJSONString(results) // json string with array of objects 

Alamofire.request(.PUT, "http://httpbin.org/get", parameters: ["params": params]) 
    .response { request, response, data, error in 
     print(request) 
     print(response) 
     print(data) 
     print(error) 
     } 

मैं इस मदद आप की उम्मीद है।

+0

लेकिन यह ऑब्जेक्ट्स की सरणी है, इसलिए मैं इसे '[स्ट्रिंग: AnyObject]' में परिवर्तित नहीं कर सकता। :/ –

+0

हां लेकिन जैसा कि मैंने उपरोक्त से कहा है कि एक शब्दकोश एक सरणी नहीं है, तो आप अपडेट किए गए उत्तर को –

+0

उदाहरण देख सकते हैं लेकिन मैं '.POST' या' .PUT' कोशिश कर रहा हूं। यह उदाहरण या डेटा सरणी है: '[[" आईडी ": 10," ऑर्डर ": 0," नाम ": टेस्ट], [" आईडी ": 12," ऑर्डर ": 9," नाम ": टेस्ट 2]]' मैं इसे '[स्ट्रिंग: AnyObject]' –

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