2017-07-20 5 views
0

でalamofireを使用してパラメータとしてJSON配列を送信しますので、私はSWIFT 3にAlamofireを使用してパラメータとして(JSON形式)は、このデータを送信しようとして迅速

[ {"type":"confirm", 
"refKey":"123456789", 
"quantity": "1"} ] 

しかし、私は、パラメータデータとして変換することはできません受け入れられるデータ型は[String:Any]

どのように必要なパラメータを渡すことができますか?

答えて

2

私はこの記事で私の答えを見つけた: Send an array as a parameter in a Alamofire POST request

をHTTPBodyにデータを送信するためにAlamofireのJSONSerializationとするURLRequestを使用します。

//creates the request   

var request = URLRequest(url: try! "https://api.website.com/request".asURL()) 

//some header examples 

request.httpMethod = "POST" 
request.setValue("Bearer ACCESS_TOKEN_HERE", 
       forHTTPHeaderField: "Authorization") 

request.setValue("application/json", forHTTPHeaderField: "Accept") 

//parameter array 

let values = ["value1", "value2", "value3"] 

request.httpBody = try! JSONSerialization.data(withJSONObject: values) 

//now just use the request with Alamofire 

Alamofire.request(request).responseJSON { response in 

    switch (response.result) { 
    case .success: 

     //success code here 

    case .failure(let error): 

     //failure code here 
    } 
} 

著者:mourodrigo

関連する問題