簡體   English   中英

AFNetworking + JSON並獲取服務器狀態

[英]AFNetworking + JSON and getting server status

我正在嘗試使用JSON從網站調用數據。

到目前為止,我可以設法獲取全部數據。 但是,我正在嘗試從JSON輸入中獲取特定選項。

我得到的是:

{
"servers": {
"CA Servers": {
"Can One": {
"status": "medium"
},

"Can Two": {
"status": "medium"
}
},

"US Servers": {
"US One": {
"status": "down"
},
"US Two": {
"status": "high"
}
}
}
}

我想知道如何才能僅將Can One中的“中等”和美國2中的“高”拉出來,或將美國One中的“ Down”拉入故事板。

在iOS 5和更高版本中,您可以使用以下代碼獲取這些值。

NSDictionary *dictionary = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSArray *arrayServers = [dictionary valueForKey:@"servers"];

如果您使用的是AFNetworking和AFJSONRequestOperation ,則在success回調中,您應該具有以下JSON對象:

...
success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    // Use JSON as an NSDictionary
    NSString *status = JSON[@"servers"][@"CA Servers"][@"Can One"][@"status"];
...

然后,您可以在情節提要中使用status變量。 還請記住,如果使用我的示例訪問字典,則應檢查結構是否存在。 否則,如果不存在任何字段,則訪問器將返回nil並且應用程序將中斷。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM