[英]how to send array to Alamofire as a Paremeter in Swift
I am new ios development, I am trying add JsonObject to array and send to as a Parameter value to Alamofire, but When I try it, I give this error Cannot convert value of type '[[String : Any]]' to expected argument type '[String : Any]' What am I to do?我是新的 ios 开发人员,我正在尝试将 JsonObject 添加到数组并作为参数值发送到 Alamofire,但是当我尝试时,我给出了这个错误Cannot convert value of type '[[String : Any]]' to expected argument键入'[String : Any]'我该怎么办?
@State var attendeeData = [[String: Any]]()
let parameters: [String: Any] = [
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
]
let parameters: [String: Any] = [
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
]
attendeeData.append(parameters)
attendeeData.append(parameters2)
addAttendeeService(parameter: attendeeData)
private func addAttendeeService(parameter: [String: Any]){
DispatchQueue.global().async {
AF.request("http://178.18.200.116:96/api/SessionPerson/Add",method: .post,parameters: parameter, encoding: JSONEncoding.default).response{ response in
debugPrint(response)
}
Array Object: When I try do this sWift doesn't accept this format数组对象:当我尝试这样做时,sWift 不接受这种格式
let parameters: [String: Any] = [
{
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
},
{
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
}
]
Simply changed your { } into [] that will solve your issue.只需将您的 { } 更改为 [] 即可解决您的问题。
let parameters: [String: Any] = [
[
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
],
[
"firstName": atd1FirstName,
"lastName": atd1LastName,
"email": atd1Email,
"telNo": atd1Phone,
"nationality": atd1Nationatility,
"licenseNumber": atd1LicenseNumber,
"companyName": atd1CompanyName,
"sessionID": 0,
"sessionDetailID": 0,
"url": ""
]
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.