小编Nat*_*tty的帖子

如何在嵌套的JSON值上使用SwiftyJSON

我正在调用一个JSON API,它有几个我需要获得的嵌套值.我正在使用SwiftyJSON来使事情变得更清洁.对于顶级值,一切似乎都运行良好,但在任何更深层次的情况下,我在解开可选值时会遇到可怕的"nil".

以下是我与Alamofire进行API调用的方式:

Alamofire.request(APIRequests.Router.Nearby(self.page)).responseJSON(){
        (_,_,json,_) in
        println(json)
        if (json != nil){
            var jsonObj = JSON(json!)

            if let userArray = jsonObj ["results"].array {

                for userDict in userArray {
                        var username: String! = userDict["username"].string
                        var firstName: String! = userDict["firstName"].string
                        var profileImage: String! = userDict["userImages"]["profile"]["filename"].string
                        var characterName: String! = userDict["characters"]["characterName"].string

                        var user = User(username: username, profileImage: profileImage, firstName: firstName, characterName: characterName)

                        self.users.append(user)
                    }
                }
Run Code Online (Sandbox Code Playgroud)

以下是JSON的示例:

{
  userInfo: {
     something: "abc",
     requestType: "GET"
  },
  results: [
    {
     username: "Jess",
     firstName: "Jessica",
     userImages: {
        profile: …
Run Code Online (Sandbox Code Playgroud)

arrays json nested alamofire swifty-json

5
推荐指数
1
解决办法
3923
查看次数

标签 统计

alamofire ×1

arrays ×1

json ×1

nested ×1

swifty-json ×1