NSDictionary *rData = (NSDictionary *) [jParser objectWithString:responseString error:nil];
rData 应该是一个NSDictionary
对象。但它似乎是一系列字典。然后我
[[rData allKeys] objectAtIndex:0]
用来访问字典的第一个键。但它的崩溃说 [NSArrayM allKeys]
无法识别的选择器。
NSDictionary *rData = (NSDictionary *) [jParser objectWithString:responseString error:nil];
rData 应该是一个NSDictionary
对象。但它似乎是一系列字典。然后我
[[rData allKeys] objectAtIndex:0]
用来访问字典的第一个键。但它的崩溃说 [NSArrayM allKeys]
无法识别的选择器。
JSON 数据可以是顶层的数组或字典。如果您的 JSON 以 { 开头,那么它将是一个字典。如果它以 [ 开头,那么它将是一个数组。
您是否 100% 了解您所接受的课程?
关于objectWithString
:
此方法将其输入转换为包含 UTF8 的 NSData 对象,并使用它调用 -objectWithData:。
返回:对象表示的NSArray或NSDictionary,如果发生错误,则返回 nil。
尝试调试这个。你有两个(至少!)选项:
NSLog(@"%@",[rData class]);
或者
NSLog(@"%@",[[jParser objectWithString:responseString error:nil] class]);
或者只是在输出中:
po [[jParser objectWithString:responseString error:nil] class];