如何使用Alamofire将单个对象作为参数发送
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Alamofire将单个对象作为参数发送相关的知识,希望对你有一定的参考价值。
我遇到了一个我没想到可能发生的问题。我需要发布第三方API的发布请求,只允许这样做
let parameters: Parameters = [{
"id": "1",
"original-address": "Some city, Some street"}]
你可以看到它不是字典,所以编译器说Cannot convert value of type '[() -> String]' to specified type 'Parameters' (aka 'Dictionary<String, Any>')
我无法删除括号,因为我的第三方API不会响应此请求。
我如何向Alamofire发送此类请求?
我已经尝试了我们心爱的Stackoverflow的一些建议,但仍然没有运气。
答案
Parameters
是typealias
的[String:Any]
,你指定
[{
"id": "1",
"original-address": "Some city, Some street"}]
这看起来像字典的json数组(甚至不是快速的Dics数组),所以你不能将它传递给Alamofire
,以完成你需要在请求体中发送它,因为Data
期待Sending json array via Alamofire
以上是关于如何使用Alamofire将单个对象作为参数发送的主要内容,如果未能解决你的问题,请参考以下文章
使用 Alamofire 将 JSON 对象作为 post 参数发送
如何在 Swift 中使用 Alamofire 将参数作为正文发送到 PUT 方法