【发布时间】:2017-07-05 13:04:55
【问题描述】:
我正在尝试在 swift 3.0 中解析我的 json 数据。我正在使用 Alamofire 4.0+ 这是我的json
{
"token":
"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1MDQ0MjgzNzgxMTF9.CNonyvtQbRgaqqkdPO5KwqpVaUmlGrpaTqlBxmvaX80",
"expires": 1504428378111,
"user":
[{"user_id":13,"user_first_name":"Himanshu","user_last_name":"Srivastava","full_name":"Himanshu Srivastava"}]
}
这是我保存这些值的模型类
import Foundation
import ObjectMapper
class LoginResult:Mappable{
var token:String?
var expires:Double?
var users:[[String:Any]]?
required init?(map:Map){
}
func mapping(map:Map)->Void{
self.token <- map["token"]
self.expires <- map["expires"]
self.users <- map["user"]
}
}
互联网上可用的解决方案都不适合我。如何解析这个 json 并映射到模型类? 这里有什么帮助吗?
【问题讨论】:
-
看来
user键的值是另一个代表数组的嵌套JSON字符串。如果您负责服务器端更改数据格式并发送 real 数组。 -
您的 json 格式不正确。你可以在 users 下有一个数组,但为什么在双引号内?
-
你需要将数据转换成json还是什么??
-
可能与您的问题无关,但我建议定义一个
User: Mappable来表示用户对象,并在您的LoginResult: Mappable中将用户声明为var users: [User]? -
@vadian 我无法更改格式,因为 Android 和 Web 使用相同的格式
标签: json swift alamofire objectmapper