在 swift 中使用 alamofire 发送 JSON 数组作为参数

Posted

技术标签:

【中文标题】在 swift 中使用 alamofire 发送 JSON 数组作为参数【英文标题】:send JSON array as parameter using alamofire in swift 【发布时间】:2017-07-20 17:46:47 【问题描述】:

我正在尝试使用 Alamofire 将此数据(JSON 格式)作为参数发送到 swift 3:

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

但我无法将其转换为参数数据,因为接受的数据类型是[String:Any]

如何传递需要的参数?

【问题讨论】:

【参考方案1】:

我在这篇文章中找到了答案: Send an array as a parameter in a Alamofire POST request

使用Alamofire的JSONSerialization和URLRequest在HTTPBody中发送数据。

    //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
    

作者:莫罗里戈

【讨论】:

感谢您的提及! =)

以上是关于在 swift 中使用 alamofire 发送 JSON 数组作为参数的主要内容,如果未能解决你的问题,请参考以下文章

使用 swift 在 Alamofire 中发送带有对象数组的 JSON 作为参数

如何使用 Alamofire SWIFT 在 post api 中发送 JSON

在swift中使用alamofire将参数作为原始数据发送。

在 Swift 中使用 Alamofire 网络进行解析时,如何在请求中发送内容类型?

如何在 swift 3 中使用 Alamofire 制作和发送字典数组(JSON 格式)发送到服务器

使用 Alamofire 3.0+ 在 swift 2.2 中使用 JSON 对象发送 POST 请求