swiftyjson 从 json 数组中获取字符串

Posted

技术标签:

【中文标题】swiftyjson 从 json 数组中获取字符串【英文标题】:swiftyjson getting string from json array 【发布时间】:2017-01-24 07:24:07 【问题描述】:

我正在使用 alamofire 和 swiftyjson 来获取它。我需要获取字符串“ubus_rpc_session”,我尝试过这种方式,但是我得到了一个数组,我需要获取字符串。你能帮帮我吗?

 Alamofire.request(URL, method: .post, parameters: param, encoding: JSONEncoding.default).responseJSON  response in
    switch response.result 
    case .success(let value):
        let json = JSON(value)
        let token = json["result"].arrayValue.map($0["ubus_rpc_session"].stringValue)
        print(token)  

  "jsonrpc":"2.0",
   "id":1,
   "result":[  
      0,
        
         "ubus_rpc_session":"07e111d317f7c701dc4dfde1b0d4862d",
         "timeout":300,
         "expires":300,
         "acls":  
            "access-group":  
               "superuser":[  
                  "read",
                  "write"
               ],
               "unauthenticated":[  
                  "read"
               ]
            ,
            "ubus":  
               "*":[  
                  "*"
               ],
               "session":[  
                  "access",
                  "login"
               ]
            ,
            "uci":  
               "*":[  
                  "read",
                  "write"
               ]
            
         ,
         "data":  
            "username":"root"
         
      
   ]

【问题讨论】:

【参考方案1】:

试试这个

//从JSON数组中获取字符串数组(在他们的文档中)

let arrayNames =  json["users"].arrayValue.map($0["name"].stringValue)


if let tempArray = json["result"].arrayValue 
         for item in tempArray 
              print(item)
           if let title = item["ubus_rpc_session"].string 
            println(title)
        

         
      

或者检查一下

let value = tempArray[1].dictionaryObject!
                        print(value["ubus_rpc_session"]!)

【讨论】:

以上是关于swiftyjson 从 json 数组中获取字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何从 JSON 数组 SwiftyJSON 中获取数据?

如何使用 SwiftyJSON 获取字符串元素数组?

SwiftyJSON - 无法从 JSON 字符串获取 transactionId

如何使用 SwiftyJSON 从深度嵌套的 JSON 字典中获取字符串 [重复]

使用 SwiftyJSON 选择字符串数组

SwiftyJson 从字典中的数组中获取值