json - 从推送通知解析时的 SwiftyJson 解析问题

标签 json swift parsing swifty-json

使用 Swifty JSON 解析 JSON 的问题

这是 **SwiftyJSON* 问题:我尝试解析来自推送通知的一些 JSON,但我似乎无法将其获取到单个值

if let json = try? JSON(data: data) {
print("before")
print(json["data"].stringValue)   
print ("after")
}

我最终得到控制台输出

before

{
   "apiKey":{
      "data":{
         "user_id":8,
         "id":75,
         "secret":"G4UgMXXXXnt0bviGjNHCPRY4nYjuvXMrEkaU2dxqOC9j7XiIy4uS1TNLxv4Kev7w"
      }
   },
   "verified":true,
   "loneWorker":{
      "data":{
         "vehicle_make":null,
         "gender":null,
         "mobile":"+447900007213",
         "vehicle_model":null,
         "hair_colour":null,
         "distinguishing_features":null,
         "firebase_token":"dsMGqAn57eo:APA91bHcE_8hoCQ9qgJfpr4b6yDrUkkkeJL7oGx-410v7hKyZfgBkcvROHevTmojJ6CvQrspDOvvXnXo9psTRKdnlQAEYzdvBE8OtsxHf-3JRmDRbJCiTrsVowDgQ5FeN7QQaEfMbFH",
         "vehicle_colour":null,
         "vrm":null,
         "arc":{
            "data":{
               "prealert_sms_number":"+447506000094",
               "sos_sms_number":"+44750000894",
               "id":1,
               "sos_call_number":"+447500000094"
            }
         },
         "build":null,
         "dob":null,
         "duress_word":null,
         "name":"Stevan ",
         "id":8,
         "preexisting_conditions":null,
         "email":"xxxxxx@hotmail.com",
         "height":null
      }
   }
}

after

但是如果我尝试这样做: print(json["data"]["apiKey"]["secret"].stringValue) 我什么也没得到。

我对此有心理障碍,无法解决用 SwiftyJSON 或任何其他正常方式解析它的问题...

[编辑:值得庆幸的是,我找到了这个问题的答案,您可以在下面的评论中看到。这些天我现在喜欢 Codable 作为一个很好的现代替代品]。

最佳答案

您以错误的方式访问该值。 您必须使用 json["data"]["apiKey"]["data"]["secret"].stringValue 访问该值。

关于json - 从推送通知解析时的 SwiftyJson 解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46351839/

相关文章:

java - 使用多态性对正则表达式解析器进行建模

c# - 将字符串通用解析为 float

json - pg nodejs 包结果为 'invalid input syntax for type json'

json - exec.Command 使用 JSON 负载转义变量

ios - 如何在 swift 中创建一个 UIView 单例?

ios - 使用 swift 将评论上传到 firebase 数据库

ios - 分配 NSTimer 时不调用 Deinit

javascript - 为什么在使用解析的字符串时出现错误 'Cannot read property ' name' of null'?

javascript - 获取 javascript 对象中共享同级同级的所有值

javascript - 使用 jQuery 附加到 ID 解析 JSON YQL 输出