我想获取带有特定主题标签的推文。我使用 Twitter 搜索 URL。这是我的代码:
NSMutableString *urlString = [NSMutableString stringWithFormat:@"%s","http://search.twitter.com/search.json?q=%23zesdaagsegent"];
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [NSData dataWithContentsOfURL:url];
NSLog(@"%@", data);
NSError *error;
NSMutableArray *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@"%@", json);
NSMutableArray *results =[NSMutableArray array];
for(NSDictionary *item in json)
{
[results addObject:[item objectForKey:@"results"]];
}
我的 NSLog 为我提供了我需要的输出:
2013-05-28 09:48:45.080 ZesdaagseGent[572:11303] { "completed_in" = "0.023"; "max_id" = 339031661368975360; "max_id_str" = 339031661368975360; page = 1; query = "%23zesdaagsegent"; "refresh_url" = "?since_id=339031661368975360&q=%23zesdaagsegent"; results = ( { "created_at" = "Mon, 27 May 2013 14:53:41 +0000"; "from_user" = SigfridMaenhout; "from_user_id" = 369194526; "from_user_id_str" = 369194526; "from_user_name" = "Sigfrid Maenhout"; geo = ""; id = 339031661368975360; "id_str" = 339031661368975360; "iso_language_code" = nl; metadata = { "result_type" = recent; }; source = "<a href="http://twitter.com/">web</a>"; text = "#zesdaagsegent Het is een zonnige dag hier in Merelbeke. We verlangen allemaal naar een beetje zonnestralen in het gezicht, toch?"; } ); "results_per_page" = 15; "since_id" = 0; "since_id_str" = 0; }
我需要包含对象的数组“结果”。我的问题是我无法使用 objectForKey 方法在 NSMutableArray 中获取结果。
有人有想法吗?
最佳答案
试试这个:
NSMutableArray *results = [NSMutableArray array];
NSDictionary *jsonResponse = [NSJSONSerialization JSONObjectWithData:data
options:kNilOptions
error:&error];
for (NSDictionary *result in jsonResponse[@"results"]) {
[results addObject:result];
}
您应该有一个 NSArray results
,其中包含每条匹配推文的 X NSDictionary。
PS:[@"results"] 是 [NSDictionary objectForKey:@"results"] 的现代 Objective-C 语法
关于ios - 在 Cocoa 中集成 Twitter 搜索 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16786886/