Swift Alamofire POST请求-将NSObject数组转换为适合参数类型

时间:2019-01-11 19:13:58

标签: swift post alamofire nsobject

我有一个Contact数组,它是一个NSObject。这是在我的iOS应用抓取用户的联系人并将其显示在表格中时创建的。

class Contact: NSObject {

     var name: String
     var phone: String

     override init() {
         self.name = ""
         self.phone = ""
     }

     init( givenName: String, familyName: String, phoneNum: String ) {
         self.name = givenName + " " + familyName
         self.phone = phoneNum
     }
}

因此,我要使用的数组contacts的类型为[Contact]。我需要使用Alamofire进行服务呼叫,该呼叫以以下格式发送正文:

{
    "contacts": [
         {
             "name": ...,
             "phone": ...
         },...
    ]
}

我有我的Alamofire请求:

Alamofire.request(url, method: .post, parameters: parameters, headers: headers)
        .responseJSON { response in
            print(response)
            if response.result.value != nil {
                let swiftyJSONVar = JSON(response.result.value)
                print(swiftyJSONVar)
            }
    }

,参数为:

let parameters: Parameters = [
        "contacts": contacts
    ]

我的问题是服务调用无法识别“联系人”,因为它显然没有作为有效JSON发送。请帮忙!

0 个答案:

没有答案