在 Alamofire 的参数中发送数组
Posted
技术标签:
【中文标题】在 Alamofire 的参数中发送数组【英文标题】:Sending array in parameter for Alamofire 【发布时间】:2018-09-29 16:18:23 【问题描述】:我需要为我的Alamofire
请求发送以下数据作为参数:
key: "metas"
value: ["meta_id": 80, "quantity": 2, "add_quantity": true]
我试过了:
let parameters: [String: AnyObject] = ["metas" : [["meta_id" : meta_id,
"quantity" : quantity,
"add_quantity" : true]] as AnyObject]
并在我的路由器中处理 Alamofire 请求:
urlRequest = try URLEncoding.default.encode(urlRequest, with: parameters)
【问题讨论】:
【参考方案1】:您需要将您的数组转换为字符串,然后传递给您的字符串数组。 这里,param 是字符串数组,如
param:[String:String] = [:]
var arrayImages : [JSON] = []
let strImageString = JSON(arrayImages).rawString(.utf8, options: .prettyPrinted)
param["certification_image"] = strImageString
这是你的要求
Alamofire.request(url, method: .post, parameters: param, encoding: URLEncoding.default, headers: nil).responseSwiftyJSON(completionHandler:
if $0.result.isSuccess
completion($0.result)
else if $0.result.isFailure
let statusCode = $0.response?.statusCode
print("StatusCode : \(statusCode)")
if(statusCode == 500)
else if(statusCode != nil)
completion($0.result)
else
makeToast(message: "Somethig_went_wrong_key")
completion($0.result)
else
makeToast(message: "No_internet_connection_key")
completion($0.result)
)
【讨论】:
以上是关于在 Alamofire 的参数中发送数组的主要内容,如果未能解决你的问题,请参考以下文章
在 swift 中使用 alamofire 发送 JSON 数组作为参数
使用 swift 在 Alamofire 中发送带有对象数组的 JSON 作为参数