iPhone facebook 连接 FQL 查询以获取配置文件 URL

Posted

技术标签:

【中文标题】iPhone facebook 连接 FQL 查询以获取配置文件 URL【英文标题】:iPhone facebook connect FQL Query to get Profile URL 【发布时间】:2010-05-27 13:46:49 【问题描述】:

喂。

我正在使用 Facebook Connect FQL 查询来提取我的个人资料照片 url,即 src_big,src_small URL。

但我总是在委托下方得到空数组

(void)request:(FBRequest*)request didLoad:(id)result

我的 FQL 查询是。

NSString* fql = [NSString stringWithFormat:@"SELECT src_big,src_small FROM photo WHERE pid IN (SELECT cover_pid FROM album WHERE owner =%lld AND name ='Profile Pictures')", session.uid]; NSDictionary* 参数 = [NSDictionary dictionaryWithObject:fql forKey:@"query"]; [[FBRequest requestWithDelegate:self] call:@"facebook.fql.query" params:params];

但是 - (void)request:(FBRequest*)request didLoad:(id)result 总是返回空结果。

如果有错误请大家指正。

【问题讨论】:

你能格式化这段代码吗 【参考方案1】:

好吧,我错了,我认为你需要一个多查询 + JSON 表示。这是我的代码

    NSString *albumFql = [NSString stringWithFormat:@"SELECT cover_pid, name FROM album WHERE owner =%lld", self.session.uid];
    NSDictionary *fqlsDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
                                    albumFql, @"album",
                                    nil];   
    NSDictionary *params = [NSDictionary dictionaryWithObject:[fqlsDictionary JSONRepresentation] forKey:@"queries"];
    [[FBRequest requestWithDelegate:self] call:@"facebook.fql.multiquery" params:params];

【讨论】:

我试过你的查询。 NSString* fql =[NSString stringWithFormat:@"SELECT cover_pid,name FROM album WHERE owner == %lld", session.uid];它仍然返回空数组,但我的帐户有 3 个名为 profile、NaturePhoto 和 Profile Pictures 的专辑。

以上是关于iPhone facebook 连接 FQL 查询以获取配置文件 URL的主要内容,如果未能解决你的问题,请参考以下文章

FQL 查询和 Graph API 对象访问的区别

相同的 fql(facebook 查询语言)在图形资源管理器中显示不同的结果并嵌入在 javascript 代码中

FQL 查询未返回所有数据

通过 FQL 获取 Facebook 上朋友参加的所有活动

使用FQL查询每个喜欢的对象

page_fan 上的 Facebook FQL 似乎不需要 user_likes 权限