解码从 HTTP API 请求收到的数据

Decode data recieved from HTTP API request

所以我正在尝试使用 API 从我们学校的评分系统中请求成绩,以便创建一个学生可以用来检查成绩的应用程序。我正在使用 NSURL 请求来获取此数据,它以 NSMutableData 的形式返回。当返回的数据作为字符串打印时,它看起来像这样:

{"ss#":null,"country":"United States","nick_name":null,"teacher_id":null,"parent":false,"teacher":true,"sms_email":null,"first_name":"Will","joined_at":"2015-10-22T16:58:51-07:00","monitor":false,"picture":"http://sbms.neolms.com/files/root/Hikaru.jpg?lmsauth=f66e77cf0971fc70efd01cd63c403e948afba1f4","student_id":null,"zip":null,"city":null,"student":false,"last_name":"Oakley","state":"CA","street_1":null,"skype":null,"assistant":false,"logins":1,"password":"1fc87c4f58bc472cb2ed2173ac048152242b7e49","birthdate":null,"email":null,"street_2":null,"last_login_at":"2015-10-22T16:58:53-07:00","first_login_at":"2015-10-22T16:58:53-07:00","userid":"woakley5","id":3016816,"administrator":true}

[别担心 none 此数据是个人数据,全部来自我为制作此应用而设置的测试 "school"]

因此您可以看到请求 returns 一个巨大的数据列表,其中包含属性和值。所有这些属性(即国家/地区、nick_name、teacher_id 等)都如阅读 api 文档所预期的那样包含在其中。我的问题是如何过滤掉该数据并从一个特定的 属性 创建一个字符串。例如,我想使用此 NSMutableData 中的 first_name 属性 创建一个名为 firstName 的字符串。我如何从数据集中提取特定的 属性 并将其分配给字符串?如果你必须研究这个特定的 API,它是在这里找到的 NEO LMS api:neolms.com/info/features

您可以这样访问:

Objective-C:

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];

NSString *firstName = [dic objectForKey:"first_name"];