我正在尝试从JSON检索值,但没有得到它。似乎与JSON中的响应和密钥之间的差异有关。谁能建议该怎么做?

 NSDictionary *jsonResults = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
            NSLog(@"Results: %@", jsonResults);
/* This logs to console as follows:
Results: {
    code = 200;
    error = "<null>";
    response =     {
        "insert_id" = 3861;
    };
        NSLog(@"insert_id%@",[jsonResults objectForKey:@"insert_id"]);
//This logs as
insert_id (null)

最佳答案

查看jsonResults的输出。花括号指示字典。并注意“响应”键的值。其值还有大括号。这意味着它是一个嵌套字典。

“ insert_id”键嵌套在“响应”键的字典中。你需要:

NSLog(@"insert_id%@",jsonResults[@"response"][@"insert_id"]);


还要注意现代语法的使用。它更容易读写。

09-07 15:58