简体   繁体   English

如何在 Swift 中将数组作为参数发送到 Alamofire

[英]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.

相关问题 如何在 swift 中向 alamofire 发送请求之前安排数组 - How to Arrangement array before send request to alamofire in swift 快速发送带有对象数组的JSON作为Alamofire中的参数 - Send JSON with array of objects as parameter in Alamofire with swift 如何在Alamofire 4.5,Swift 4中的标头中发送`apikey`? - How to send `apikey` in header in Alamofire 4.5,Swift 4? 如何在Swift 3中使用Alamofire制作并发送字典数组(JSON格式)发送到服务器 - How Can I make & send array of dictionary (JSON Format ) send to server using Alamofire in swift 3 如何使用Alamofire和Mailgun使用Swift发送电子邮件? - How to send email using Alamofire and Mailgun with Swift? 如何使用 swift 4 从数据中使用 Alamofire multipart 在 params 中发送数组 - How to send array in params using Alamofire multipart from data using swift 4 Swift - 序列化包含对象数组的对象并使用 alamofire 发送 - Swift - Serialize object containing array of objects and send with alamofire 如何使用Alamofire multipart在params中发送数组 - How to send array in params using Alamofire multipart 如何将 Object 参数数组传递给 Alamofire swift - How to pass array of Object parameter to Alamofire swift Swift Alamofire将图像数组与其他参数一起发送 - Swift Alamofire send array of images together with other parameters
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM