【问题标题】:Facebook Query Language - how do I get note tags?Facebook 查询语言 - 我如何获得笔记标签?
【发布时间】:2010-07-23 07:55:17
【问题描述】:

我已经倾注了 FQL API,完成了 google 搜索 - 但无法弄清楚如何在便笺中获取标记的人员列表。它不在“注释”表上。并且没有 note_tags 表。

其他人解决了吗?

【问题讨论】:

    标签: iphone facebook facebook-fql


    【解决方案1】:

    如果您不怕占用一些处理能力并且您正在尝试查找被标记的用户朋友,那么这是一种解决方法,您可以查询他们的流:

    NSString* fql = [NSString stringWithFormat:
                         @"SELECT source_id, attachment FROM stream WHERE source_id IN (SELECT uid2 FROM friend WHERE uid1 =%@ limit %d", yourUserID, limitInt];
    
    NSDictionary* params = [NSDictionary dictionaryWithObject:fql forKey:@"query"];
    [[FBRequest requestWithDelegate:self] call:@"facebook.fql.query" params:params];
    

    然后在附件的“name”属性中搜索帖子的标题,或在 href 属性中搜索到笔记的超链接。

    如果你想要他们的名字,你可以做一个多重查询:

    NSString* fql = [NSString stringWithFormat:@"\"friendStreams\":\"SELECT source_id, attachment FROM stream WHERE source_id IN (SELECT uid2 FROM friend WHERE uid1 =%@ limit %d\",\"userNames\":\"SELECT name, uid FROM user WHERE uid IN (SELECT source_id FROM #friendStreams)\"", yourUserID, limitInt];
    
    NSDictionary* params = [NSDictionary dictionaryWithObject:fql forKey:@"queries"];
            //NSLog(@"creating request delegate");
            [[FBRequest requestWithDelegate:self] call:@"facebook.fql.multiquery" params:params];
    

    不幸的是,据我所知,无法搜索查询中的附件。

    当然,这种方法也可以找到在他们的墙上分享了笔记的朋友……你可以通过限制 created_time 属性来解决这个问题。我不确定这一点,但似乎如果您在创建笔记时被标记,则故事会在实际笔记发布在创建者的墙上之前稍微显示在您的墙上:对于测试笔记,我做了笔记已发布到创建者的墙在 1279919730 和关于被标记的人墙上的笔记的故事是在 1279919725 上创建的。也许这有帮助。

    【讨论】:

    • 感谢您的回答,但有 1000 多个朋友,这根本行不通。人们还可以从他们的墙流中删除元素。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多