我有一系列字典,我想借助 SwiftyJSON 将它们发布到 Alamofire。
api 设置为:
[
{
"imageUrl": "someimage3.jpg"
},
{
"imageUrl": "someimage4.jpg"
}
]
我的包含图像对象的数组在打印时看起来像这样,其中包含 imageUrl 键和图像名称作为值。
uploadedFiles = [
[imageUrl: "someimage.jpg"],
[imageUrl: "someimage2.jpg"]
]
我正在尝试将字典数组转换为正文所需的格式。我不太确定如何让它们成为 [String: AnyObject]
var body: [String: AnyObject] = [:]
let paramsJSON = JSON(uploadedFiles)
body = paramsJSON
alamofire 帖子
Alamofire.request("\(BASE_URL)mainimages/\(someid)", method: .post, parameters: body, encoding: JSONEncoding.default, headers: header).responseString { (response) in
if response.result.error == nil {
let status = response.response?.statusCode
completion(true, status)
} else {
completion(false, nil)
debugPrint(response.result.error as Any)
}
}
最佳答案
你可以用这个方法实现,它对我有用。
let payload = [["eventName": "Notifications","body":["version": "1.0","latitude": lat,"longitude":lon]]] as [[String : AnyObject]]
trackEventRequest(requestParams: payload, urlString: "https://xyz/youyURL")
func trackEventRequest(requestParams: [[String: AnyObject]], urlString: String) {
let url = URL(string: urlString)
var request = URLRequest(url: url!)
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"
request.httpBody = try! JSONSerialization.data(withJSONObject: requestParams, options: [])
Alamofire.request(reqeust).responseJSON { (response) in
switch response.result {
case .success:
print(response.result.value)
break
case .failure:
print(response.error)
break
}
}
}
关于swift - 使用 Alamofire 和 SwiftyJSON 发布对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50035782/