【问题标题】:Parse JSON in Objective-C from REST API从 REST API 解析 Objective-C 中的 JSON
【发布时间】:2017-03-28 03:27:23
【问题描述】:

我在尝试使用 NSJSONSerialization 解析来自 REST API 的示例 JSON 时遇到问题。

我正在使用选项 NSJSONReadingallowfragment,但它没有转换为 JSON,它仍在 NSString 中。

错误:“无法识别的选择器发送到实例 0x7f9e53827600”。

[
  {
    "TeamLeadID":57,
    "Name":"Baird Tim",
    "AssignmentUser":"C",
    "AssDetails":[
      {
        "NoOfVINs":"1C4RJECG8HC685188",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      },
      {
        "NoOfVINs":"1C4RJFBG3HC699233",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      },{
        "NoOfVINs":"1C4RJFBG6HC688985",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      },
      {
        "NoOfVINs":"1C4RJFDJ2HC678401",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      },
      {
        "NoOfVINs":"1C4RJFDJ2HC707329",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      },
      {
        "NoOfVINs":"1C4RJFFG0HC669486",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"T"
      }
    ]
  },
  {
    "TeamLeadID":75,
    "Name":"Farran Alicia",
    "AssignmentUser":"O",
    "AssDetails":[
      {
        "NoOfVINs":"1C4RJECG8HC685188",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      },{
        "NoOfVINs":"1C4RJFBG3HC699233",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      },{
        "NoOfVINs":"1C4RJFBG6HC688985",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      },{
        "NoOfVINs":"1C4RJFDJ2HC678401",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      },{
        "NoOfVINs":"1C4RJFDJ2HC707329",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      },{
        "NoOfVINs":"1C4RJFFG0HC669486",
        "HoldID_FK":402,
        "HoldNumber":"2208",
        "HoldDescription":"R OCT. CPA REJECTS",
        "UserType":"Q"
      }
    ]
  }
] 

希望尽快回复。

【问题讨论】:

  • 您遇到了哪种问题?
  • 您的 json 数据有效,那么您面临什么样的问题?
  • Ian 收到错误“无法识别的选择器发送到实例 0x7f9e53827600”
  • 我正在使用选项 NSJSONReadingallowfragment 但它没有被转换为 json 它仍然在 NSString 中,因此在解析数据时遇到问题?

标签: ios objective-c iphone json nsjsonserialization


【解决方案1】:
NSError *jsonError = nil;
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: responseData options: NSJSONReadingMutableContainers error: &jsonError];

if (!jsonArray) {
  NSLog(@"Error parsing JSON: %@", e);
} else {
   for(NSDictionary *item in jsonArray) {
      NSLog(@"Item: %@", item);
   }
}

【讨论】:

    猜你喜欢
    • 2013-06-06
    • 1970-01-01
    • 2019-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    相关资源
    最近更新 更多