SwiftyJSON字典解析

问题描述 投票:3回答:3

我试图使用SwiftyJSON来解析服务器中的一些数据。

例如,假设从服务器返回的JSON是:

{     
 "data":{  
     "id":"92",
     "name":"harry",
     "username":"Hazza"
   },
 "error":false
}

我想获取用户名字符串,所以为此我使用以下方法获取数据对象:

let data = json["data"].dictionaryValue

然后为了获取我希望能够做的用户名字符串

let username = data["username"].stringValue

但是,这会返回一个错误,说'(String,JSON)没有名为'.stringValue'的成员。

这个看似简单的问题在哪里出错了?

谢谢。

ios json swifty-json
3个回答
8
投票

你应该做的是:

if let username = json["data"]["username"].string {
    println(username)
}

3
投票

虽然上面的方法有效,但真正的问题是你需要解压缩dict值:

let username = data["username"]!.stringValue


0
投票

适用于Swift 3/4

guard let username = json["data"]["username"].string else { return nil }
© www.soinside.com 2019 - 2024. All rights reserved.