通过ObjectMapper映射Alamofire responseJSON

时间:2017-03-28 17:25:40

标签: ios alamofire objectmapper

注意:我需要使用ObjectMapper,而不是AlamoFireObjectMapper。

如何在不使用JSON的情况下进行映射,但是从responseJSON数据映射到用户?以下是尝试从responseJSON转到jsonn然后再返回到数据(是User)。我想一定有办法吗?

或者我应该使用AlamoFire的responseData吗?

public class User: Mappable {
    var username: String?

    required public init?(map: Map) {

    }

    // Mappable
    public func mapping(map: Map) {
        username    <- map["username"]
    }
}


    Alamofire.request(
        url,
        method: .get,
        headers: headers_employees).responseJSON {
            response in
        // Map via ObjectMapper
        let [User] = Mapper<User>().map(JSONString: JSONString)

   }

1 个答案:

答案 0 :(得分:3)

地图功能也接受JSONObject (Any)JSON dictionary ([String: Any])。根据响应对象的类型,您应该使用适当的方法。

在您的情况下,使用下面的代码来映​​射JSONResponse

Alamofire.request(
    url,
    method: .get,
    headers: headers_employees).responseJSON {
        response in
    // Map via ObjectMapper
    let [User] = Mapper<User>().map(JSONObject:response.result.value)
}