如何将Object参数数组快速传递给Alamofire
Posted
技术标签:
【中文标题】如何将Object参数数组快速传递给Alamofire【英文标题】:How to pass array of Object parameter to Alamofire swift 【发布时间】:2020-06-16 10:02:58 【问题描述】:我是 Swift 的新手,任何人都可以帮助我。
我想将对象数组传递给 Alamofire,但我不知道该怎么做
这里是需要的参数:
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI1ZWU4OGZiNzhiYTBkMjMyZDFmYWZkMzgiLCJpYXQiOjE1OTIyOTk2Njh9.AVuxiTZy10fV2ZMZcT-oHXSg6PdK3tfE",
"zipCodes": [
"zip_code": "55001",
"city": "Afton",
"state": "MN",
"county": "Washington"
]
我就是这么做的
let parameters : [String : String] = ["token" : retrivedToken, "zipCodes" : [
"zip_code": "55001",
"city": "Afton",
"state": "MN",
"county": "Washington"
]
]
【问题讨论】:
【参考方案1】:let bodyParams: [String : Any] = [
"token": "\(retrivedToken)",
"zipCodes":[
"county": "Washington",
"state": "MN",
"zip_code": "55001",
"city": "Afton"
]
]
让 urlString = "abc.com"
Alamofire.request(urlString, method: .post, parameters: bodyParams ,encoding: JSONEncoding.default, headers: nil).responseJSON
response in
switch response.result
case .success:
print(response)
break
case .failure(let error):
print(error)
【讨论】:
这个答案的目的是什么?这和我之前写的一样。【参考方案2】:只需将您的参数用于您的请求。
func sendRequestRequest()
// JSON Body
let parameters: [String : Any] = [
"token": retrivedToken,
"zipCodes": [
"county": "Washington",
"state": "MN",
"zip_code": "55001",
"city": "Afton"
]
]
// Fetch Request
Alamofire.request("your API url", method: .post, parameters: parameters, encoding: JSONEncoding.default)
.validate(statusCode: 200..<300)
.responseJSON response in
if (response.result.error == nil)
print("HTTP Response Body: \(response.data)")
else
print("HTTP Request failed: \(response.result.error)")
别忘了,如果您使用 Alamofire v5,请使用 AF.request
而不是 Alamofire.request
【讨论】:
以上是关于如何将Object参数数组快速传递给Alamofire的主要内容,如果未能解决你的问题,请参考以下文章
将数组传递给接受参数 object[] 或 IEnumerable<T> 的函数