swift – AlamofireObjectMapper无法使用类型'((User?,NSError?) – > _)’的参数列表调用’responseObject’

我在
swift中使用AlamofireObjectMapper框架,如
https://github.com/tristanhimmelman/AlamofireObjectMapper所述,我想使用自定义类的“responseObject”,但它不起作用:

码:

let URL = "http://37.187.145.241:8080/MasterMarket/api/users-maxou/2"
        Alamofire.request(.GET, URL, parameters: nil)
            .responseObject { (response: User?, error: NSError?) in
                println(response?.company?.nameCompany)
                println(response?.lastNameUser)
        }

我的自定义类用户:

class User : Mappable {

var idUser : Int?
var firstNameUser : String?
var lastNameUser : String?
var phoneNumberUser : String?
var parent : User?
var removeUser : Bool?
var managerRightsUser : Bool?

var company : Company?
var genderType : GenderType?
var userType : UserType?
var deposit : Deposit?

var createdUser : String?
var modifiedUser : String?

init() {}

required init?(_ map: Map) {
    mapping(map)
}

func mapping(decoder: Map) {
    idUser <- decoder["idUser"]
    firstNameUser <- decoder["firstNameUser"]
    lastNameUser <- decoder["lastNameUser"]
    phoneNumberUser <- decoder["phoneNumberUser"]
    removeUser <- decoder["removeUser"]
    managerRightsUser <- decoder["managerRightsUser"]

    parent <- decoder["parent"]
    company <- decoder["company"]

}

和错误:

Cannot invoke 'responseObject' with an argument list of type '((User?, NSError?) -> _)'

最佳答案 我有同样的问题,实际上错误不是关于responseObject()方法而是request()方法.

解决方案是为请求方法指定我的参数数组的类型(String).你没有任何参数,可能添加:你的网址字符串?

点赞